登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

扶红星的博客

生活本无味,尝试的多了也便五味俱全了。

 
 
 

日志

 
 

接口开发中根据回调地址获取正式环境下的授权码  

2013-07-29 17:19:46|  分类: 知识梳理 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

说明:作为一个淘宝或者京东开放平台开发者,倘若只是有一个应用那也只能获得一个appkey和一个appsecret,没有授权就获取不到授权码,此时也便不能通过任何开放接口获取任何相关数据,以下便来分析如何在他用型正式环境下获得用户授权从而取得授权码最终调用接口取得数据方法。。。


/// <summary>
        /// 取得回调地,最终将这个回调地址(CallBackUrl)复制粘贴到淘宝开放平台开发者中心下的应用基本信息设置下的回调地址中或是京东宙斯开发者中心里面的应用管理中的回调页面URL中,如下图所示
        /// </summary>
        public string CallBackUrl
        {
            get
            {
                string url = Request.Url.LocalPath;

                int tmp1 = url.LastIndexOf("/");

                if (tmp1 < url.Length)
                {
                    url = url.Substring(0, tmp1);
                }

                return "http://"+ Request.Url.Host + (Request.Url.Port != 80 ?":" + Request.Url.Port.ToString() : "") + url + "/Download.aspx";
            }
        }

一、淘宝开放平台

接口开发中根据回调地址获取正式环境下的授权码 - 盛情渊 - 南宫云遥的博客

完成以上步骤之后,开始访问链接http://container.open.taobao.com/container?appkey=?点击进去之后会出现一个淘宝应用登陆授权页面,此时用所拥有的或是需要的淘宝店铺帐号进行登陆授权,让页面跳转到回调地址中设置的“Download.aspx”页面,此时在这个页面中应该已经有收到既定的一些应用参数,我们只需要通过Request.QueryString["top_session"].ToString()方法获得我们需要的appsession即可,至此,我们调用淘宝接口的一些应用参数已经获取完毕,就可以完成我们想要的操作了。


二、京东宙斯开放平台

接口开发中根据回调地址获取正式环境下的授权码 - 盛情渊 - 南宫云遥的博客

完成以上操作之后,我们可以进入到回调页面的后台程序中作如下代码测试:

string code = Request.QueryString["code"];
string state = Request.QueryString["state"];
if (code+"" == "")
{

      //这里是当页面没有获取到回调时,就让页面跳转到京东宙斯的登陆授权页面实现用户授权,其中的state为状态参数,由应用自定义,颁发授权后会原封不动返回

      Response.Redirect(String.Format("https://auth.360buy.com/oauth/authorize?response_type=code&client_id={0}&redirect_uri={1}&state=dongte", 申请应用时获取的App Key, 应用管理中设置的回调页面URL));
}
else
{

      //这里是当用户登陆授权之后进入
      string jdurl = String.Format("https://auth.360buy.com/oauth/token?grant_type=authorization_code&client_id={0}&client_secret={1}&scope=read&redirect_uri={2}&code={3}&state={4}", 申请应用时获取的App Key, 申请应用时获取的App Secret, 应用管理中设置的回调页面URL, 回调中获取的code, 回调中获取的state);

//最终生成的链接地址页面内容如下:

接口开发中根据回调地址获取正式环境下的授权码 - 盛情渊 - 南宫云遥的博客这里是一个json的文件,最终我们可以通过解析获取到授权码以及相关的参数信息,最终我们便可以通过这些参数完成我们想要的操作

}

  评论这张
 
阅读(1720)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018