• ASP.NET 拼多多用户登录授权后使用code去换取access_token


    一、拼多多开放平台

    由于本人刚毕业进公司实习 遇到一些问题然后想通过博客来记录和分享给大家一起学习。

    第一次写博客没什么经验不是写的很好 请大家多多关照 嘴下留情哈哈 谢谢!

    好了 话不多说直接进入主题。

    二、使用code获取access_token

     最近公司准备做一个拼多多开放平台里的api接口调用去查看商家的订单、商品、物流等等。所以需要code去换取access_token,因为我也是第一次接触的这个api的调用 有很多的不懂 然后就上了百度搜了一会 发现都没有拼多多的案例什么的。然后就看到了微信跟拼多多的很类似,所以就参考了一下。

    //获取访问令牌
    string postUrl="http://open-api.pinduoduo.com/oauth/token";
    string strResponse;
    string strFormValues;
    HttpWebRequest myHttpWebRequest=(HttpWebRequest)WebRequest.Create(postUrl);
    myHttpWebRequest.Method="POST";
    myHttpWebRequest.ContentType="application/json";
    //将参数存放在Dictionary<string,string>里面 再转化成json 进行请求
    Dictionary<string,string> dic=new Dictionary<string,string>();
    dic.Add("grant_type","authorization_code");
    dic.Add("code","[用户登录授权后获取的code]");
    dic.Add("client_id","[应用创建时的client_id]");
    dic.Add("client_secret","[应用创建时的client_secret]");
    dic.Add("redirect_uri","[应用创建时的回调地址]");
    string json=(new JavaScriptSerializer()).Serialize(dic);
    ASCIIEncoding encoding=new ASCIIEncoding();
    byte[] byte1=encoding.GetBytes(json);
    strFormValues=Encoding.ASCII.GetString(byte1);
    myHttpWebRequest.ContentLength=strFormValues.Length;
    //发送请求
    StreamWriter stOut=new StreamWriter(myHttpWebRequest.GetRequestStream(),Encoding.ASCII);
    stOut.Write(strFormValues);
    stOut.Close();
    //接受返回信息
    StreamReader stIn=new StreamReader(myHttpWebRequest.GetResponse().GetResponseStream());
    strResponse=stIn.ReadToEnd();
    stIn.Close();
    return strResponse;

     这样就可以获取到access_token啦 只需要稍作修改。

     然后就可以到拼多多开放平台里面的控制台下的测试工具进行测试 然后就可以看到它返回的结果是什么了。

    注:

    1、软件代码为原创,如需转载,请注明出处;

    2、如果文中有什么错误,欢迎指出,谢谢!

     作者:小飞
     博客地址:http://www.cnblogs.com/ouyang6994/
     本文地址:http://www.cnblogs.com/ouyang6994/p/8733097.html
     声明:本博客原创文字允许转载,转载时必须保留此段声明,且在文章页面明显位置给出原文链接。
  • 相关阅读:
    unity3d热更新插件uLua学习整理
    结合axios对项目中的api请求进行封装
    移动端适配剖析
    vscode如何调试node项目(给node项目打断点)
    mac上使用cnpm搭建npm私有仓库,并上传/下载私有npm包
    前端常见的兼容性问题--web端和移动端
    react树形选择组(支持:单选,多选,全选)
    MongoDB 与 Mysql 的对比
    使用div 的 contenteditable属性,实现输入编辑,输入 "#" 出现下拉选择
    前端单元测试,以及给现有的vue项目添加jest + Vue Test Utils的配置
  • 原文地址:https://www.cnblogs.com/ouyang6994/p/8733097.html
Copyright © 2020-2023  润新知