欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

饿了么授权获取token

程序员文章站 2023-12-31 15:01:34
...

注:在饿了么开放平台注册了账户并申请资质认证,创建了应用后

引入jar包

1、首先从【饿了么开放平台】-【文档中心】-【开发文档】-【sdk使用说明】中点击【Java SDK访问地址】

饿了么授权获取token

选择语言对应的地址链接

2、点击之后跳转到Coding的代码托管网站

饿了么授权获取token


3、在项目中常量类配置文件中(参数在饿了么开放平台-管理中心-沙箱环境)

切记:在常量类配置文件中常量值不能出现空格

4、在spring配置文件中注册

 <bean id="IS_SANDBOX" class="java.lang.Boolean">
		<constructor-arg>
			<value>${IS_SANDBOX}</value>
		</constructor-arg>
    </bean>
    
    <bean id="SANDBOX_APP_KEY" class="java.lang.String">
		<constructor-arg>
			<value>${SANDBOX_APP_KEY}</value>
		</constructor-arg>
    </bean>
    
    <bean id="SANDBOX_APP_SECRET" class="java.lang.String">
		<constructor-arg>
			<value>${SANDBOX_APP_SECRET}</value>
		</constructor-arg>
    </bean>
    
    <bean id="SANDBOX_STORE_ID" class="java.lang.String">
		<constructor-arg>
			<value>${SANDBOX_STORE_ID}</value>
		</constructor-arg>
    </bean>
    
     <bean id="SANDBOX_STORE_URL" class="java.lang.String">
		<constructor-arg>
			<value>${SANDBOX_STORE_URL}</value>
		</constructor-arg>
    </bean>
    
    <bean id="SANDBOX_STORE_PASS" class="java.lang.String">
		<constructor-arg>
			<value>${SANDBOX_STORE_PASS}</value>
		</constructor-arg>
    </bean>
    
     <bean id="SANDBOX_REDIRECT_URL" class="java.lang.String">
		<constructor-arg>
			<value>${SANDBOX_REDIRECT_URL}</value>
		</constructor-arg>
    </bean>

首先获得店铺授权url

@Resource(name = "IS_SANDBOX")
	private boolean IS_SANDBOX;
	
	
	@Resource(name = "SANDBOX_APP_KEY")
	private String SANDBOX_APP_KEY;
	
	@Resource(name = "SANDBOX_APP_SECRET")
	private String SANDBOX_APP_SECRET;
	
	@Resource(name = "SANDBOX_REDIRECT_URL")
	private String SANDBOX_REDIRECT_URL;	

 @RequestMapping("mendian")
	@ResponseBody
	public Map<String,Object> getTake() {
		Map<String,Object> map = new HashMap<String,Object>();
		Config config=new Config(IS_SANDBOX,SANDBOX_APP_KEY,SANDBOX_APP_SECRET);
		 OAuthClient client = new OAuthClient(config);
	     String authUrl = client.getAuthUrl(SANDBOX_REDIRECT_URL, "all", "1234");
	    map.put("src",authUrl);
	    return map;
	}

在controller中接收回调的授权码获取token值

@RequestMapping(value="ElemeServlet",method = RequestMethod.GET)
	public void getToken(HttpServletRequest request) {
		String code=request.getParameter("code");
		System.err.println(code);
		
         Config config=new Config(true, SANDBOX_APP_KEY, SANDBOX_APP_SECRET);
         OAuthClient client = new OAuthClient(config);
         Token token=client.getTokenByCode(code, SANDBOX_REDIRECT_URL);	
	}

若得到的token值一直为空,如下

饿了么授权获取token

请使用debug模式去看token的报错信息,如下

饿了么授权获取token


去饿了么开放平台中管理中心-开发文档-商户授权说明中查询异常信息

得到token后就可进行对饿了么的操作了






上一篇:

下一篇: