查看: 1442|回复: 0

[.NET开发] ASP.NET 拼多多用户登录授权后使用code去换取access_token

发表于 2018-4-24 08:00:01
一、拼多多开放平台

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

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

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

二、使用code获取access_token

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

  1. //获取访问令牌
  2. string postUrl="http://open-api.pinduoduo.com/oauth/token";
  3. string strResponse;
  4. string strFormValues;
  5. HttpWebRequest myHttpWebRequest=(HttpWebRequest)WebRequest.Create(postUrl);
  6. myHttpWebRequest.Method="POST";
  7. myHttpWebRequest.ContentType="application/json";
  8. //将参数存放在Dictionary<string,string>里面 再转化成json 进行请求
  9. Dictionary<string,string> dic=new Dictionary<string,string>();
  10. dic.Add("grant_type","authorization_code");
  11. dic.Add("code","[用户登录授权后获取的code]");
  12. dic.Add("client_id","[应用创建时的client_id]");
  13. dic.Add("client_secret","[应用创建时的client_secret]");
  14. dic.Add("redirect_uri","[应用创建时的回调地址]");
  15. string json=(new JavaScriptSerializer()).Serialize(dic);
  16. ASCIIEncoding encoding=new ASCIIEncoding();
  17. byte[] byte1=encoding.GetBytes(json);
  18. strFormValues=Encoding.ASCII.GetString(byte1);
  19. myHttpWebRequest.ContentLength=strFormValues.Length;
  20. //发送请求
  21. StreamWriter stOut=new StreamWriter(myHttpWebRequest.GetRequestStream(),Encoding.ASCII);
  22. stOut.Write(strFormValues);
  23. stOut.Close();
  24. //接受返回信息
  25. StreamReader stIn=new StreamReader(myHttpWebRequest.GetResponse().GetResponseStream());
  26. strResponse=stIn.ReadToEnd();
  27. stIn.Close();
  28. return strResponse;
复制代码

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

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

注:

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

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

作者:小飞
博客地址:http://www.cnblogs.com/ouyang6994/
本文地址:http://www.cnblogs.com/ouyang6994/p/8733097.html
声明:本博客原创文字允许转载,转载时必须保留此段声明,且在文章页面明显位置给出原文链接。


回复

使用道具 举报