有赞新零售社区

发帖
API使用问题»小白求助如何获取CODE

小白求助如何获取CODE

chengyifan 2018-09-22 3335 浏览 12 评论 | [显示全部楼层] [打印]
String state ="teststate";
String url="https://open.youzan.com/oauth/authorize";
@RequestMapping(value="/",method= RequestMethod.GET)
public  void test(){
    HttpClient httpClient = new DefaultHttpClient();
    HttpClient.Params params = HttpClient.Params.custom()
            .add("client_id", "***********")
            .add("response_type", "code")
            .add("state", "state")
            .add("redirect_uri","http://youzanyun.com/callback")
            .build();
    //.setContentType(ContentType.APPLICATION_FORM_URLENCODED)
String resp = httpClient.post(url, params);
    //String resp =httpClient.get(url,params);
System.out.println(resp);
    System.out.println(state);
    //System.out.println(httpClient.get(url));
}

请问这样写是不是有错误?
运行后得到的是Unsupported Media Typeteststate
请问应该怎么改?求各位大神帮助!!!
本帖最后由 chengyifan 于 2018-9-21 16:51 编辑
用手机打开
收藏 ··· 回复
    chengyifan 青铜   2018-09-22 显示全部楼层
    有赞-导演 发表于 2018-9-21 17:32
    如果您获取code这一步没有问题只是换取token报错请参考下面代码测试一下,有疑问再追问
    注意这个方式使用工 ...


    你好,现在我是没有获取到CODE,使用client_id后返回的是
    <!DOCTYPE html><html><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="renderer" content="webkit"><meta name="referrer" content="always"><meta name="viewport" content="width=device-width,user-scalable=no,initial-scale=1,maximum-scale=1,minimum-scale=1"><title>有赞店铺授权 - 做生意,用有赞</title><meta name="keywords" content="有赞,微信商城,粉丝营销,微信商城运营"><meta name="description" content="有赞是帮助商家在微信上搭建微信商城的平台,提供店铺、商品、订单、物流、消息和客户的管理模块,同时还提供丰富的营销应用和活动插件。"><link rel="icon" href="//img.yzcdn.cn/youzanyun/favicon.ico">  <link rel="stylesheet" href="//b.yzcdn.cn/static/build/www/styles/common/base_fea7a03113f1ec0fbb324c2c766edfd7.css" media="screen">    <link rel="stylesheet" href="//b.yzcdn.cn/static/build/www/styles/pages/oauth/authorize_25bdd19ae40434c2510d96dfd2f3dba2.css" media="screen">  

    这样一个登录页面,请问是否是怎么回事呢?

      chengyifan 青铜   2018-09-22 显示全部楼层
      有赞-导演 发表于 2018-9-21 17:32
      如果您获取code这一步没有问题只是换取token报错请参考下面代码测试一下,有疑问再追问
      注意这个方式使用工 ...



      如果我用我私人账号登录就会在页面上显示   

      参数client_id非法,错误码 41000
      请联系开发者确认授权链接信息是否正确

        chengyifan 青铜   2018-09-24 显示全部楼层
        lass="quote 15">
        有赞-导演 发表于 2018-9-21 20:50
        提供你的token 私信发我一下方便判断你的问题


        你好,不好意思打扰你了,想给您发私信但现在显示等级不够。。。
        现在我获取Token时显示的是  "error_description":"跳转链接非法","error":"41001"请问这是什么错误?

          chengyifan 青铜   2018-09-25 显示全部楼层
          提示: 该帖被管理员或版主屏蔽

            chengyifan 青铜   2018-09-25 显示全部楼层
            有赞-导演 发表于 2018-9-25 10:52
            这个说明你的授权拼接链接地址不对,需要你提供一下你的授权链接看一下 ...


            你好,代码如下,其中code是获取到的code;
            是使用的工具型。

            HttpClient httpClient = new DefaultHttpClient();
                    HttpClient.Params params = HttpClient.Params.custom()

                            .add("client_id", "*******************")
                            .add("client_secret", "********************")
                            .add("grant_type", "authorization_code")
                            .add("code",code)
                            .add("redirect_uri","https://www.fotor.com.cn/templates?hmsr=%E6%9C%89%E8%B5%9E&hmpl=&hmcu=&hmkw=&hmci=")
                            .setContentType(ContentType.APPLICATION_FORM_URLENCODED).build();
                    String resp = httpClient.post(url, params);
                    System.out.println(resp);
                    if (StringUtils.isBlank(resp) || !resp.contains("access_token")) {
                        throw new RuntimeException(resp);
                    }
                    return JsonUtils.toBean(resp, new TypeReference<OAuthToken>() {
                    });

              chengyifan 青铜   2018-09-26 显示全部楼层
              有赞-导演 发表于 2018-9-25 14:45
              您的授权地址不要带自定义参数,您使用这个地址就可以换取https://www.fotor.com.cn/templates  这个地址 ...


              非常感谢,已经解决!

                chengyifan 青铜   2018-09-27 显示全部楼层
                有赞-导演 发表于 2018-9-25 14:45
                您的授权地址不要带自定义参数,您使用这个地址就可以换取https://www.fotor.com.cn/templates  这个地址 ...


                你好,请问我现在需要获取用户信息   youzan.user.basic.get    其中有个 YZClient client = new DefaultYZClient(new Token("token")); ,这里的token是我们商家获取的access_token 还是其他的?

                  1跳至
                  您需要登录后才可以回帖 登录 | 立即注册

                  本版积分规则

                  复制链接
                  新浪微博
                  QQ空间
                  微信扫码
                  • 回复

                  • 评分

                  客服工作时间是9:00-18:00,客服妹子当前不在线,若不能及时回复请谅解。试试右上角的搜索吧,论坛有丰富的经验贴、公告贴,相信一定能够帮到您~

                  复制成功