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
声明:本博客原创文字允许转载,转载时必须保留此段声明,且在文章页面明显位置给出原文链接。
ASP.NET 拼多多用户登录授权后使用code去换取access_token的更多相关文章
- Asp .Net Core 2.0 登录授权以及多用户登录
用户登录是一个非常常见的应用场景 .net core 2.0 的登录方式发生了点变化,应该是属于是良性的变化,变得更方便,更容易扩展. 配置 打开项目中的Startup.cs文件,找到Configur ...
- openldap 指定普通用户登录ldap后可查看某分组下的用户信息
#ldap普通用户登录限制查看信息#在/openldap/slapd.conf文件最下面添加一下代码,可控制某个用户拥有查看用户信息的权限,而其他普通用户登录后无法查看用户信息,若有多个普通用户需要用 ...
- Asp .Net Core 2.0 登录授权以及前后台多用户登录
用户登录是一个非常常见的应用场景 .net core 2.0 的登录方式发生了点变化,应该是属于是良性的变化,变得更方便,更容易扩展. 配置 打开项目中的Startup.cs文件,找到Configur ...
- root用户登录mysql后新建用户提示1045错误
执行以下命令查看root权限 show grants for 'root'@'localhost'; 如果没有显示with grant option,说明是root没有拥有新建授权用户的权限(为什么会 ...
- Linux下实现不活动用户登录超时后自动登出
方法一:通过修改.bashrc或.bash_profile文件来实现 通过修改home目录下的.bashrc或.bash_profile文件来实现.这两个文件选择其中一个在末尾加入如下一行,具体操作 ...
- asp+mysql__不同类型用户登录
未防注入//0.0 /***这里代码应用场景为多类用户登录,根据用户选择不同的单选按钮判断用户登录的类型,*从而进行不同的数据表进行判断,用户的用户名和密码是否正确.*/ public partial ...
- Asp.Net MVC记住用户登录信息 下次登录无需输入密码
有的时候做网站,就需要记住用户登录信息,下次再登录网站时,不用重复输入用户名和密码,原理是浏览器的cookie把状态给记住了! 那么具体是怎么实现的呢?下面博主将一部分代码贴出来,想要完整版的Demo ...
- Java 微信登录授权后获取微信用户信息昵称乱码问题解决
String getUserInfoUrl = "https://api.weixin.qq.com/sns/userinfo?access_token="+access_toke ...
- 基于ASP.NET MVC 微信网页登录授权(scope为snsapi_base) 流程 上 获取OPENID
流程图 我们需要判断是否存在OPENID 首先我们得先定义一个全局的OPENID 类似于普通账号密码登录系统的 当前登录用户ID 因为我是MVC 框架 我这里定义一个控制器基类 BaseCont ...
随机推荐
- 收集Nginx-access,Nginx-error日志
1.配置Logstash [root@Logstash logstash]# vim /usr/local/logstash/config/nginx_log.conf input { beats ...
- 配置IIS使其支持APK文件的下载
在管理工具里打开Internet 信息服务(IIS)管理器.然后选择需要配置的网站. 右侧的界面中会显示该网站的所有功能配置,我们选择并点击进入“MIME类型” 在左侧的操作区选择点击“添加”MI ...
- 5、Spring Boot 2.x 启动原理解析
1.5 Spring Boot 启动原理解析 前言 前面几章我们见识了SpringBoot为我们做的自动配置,确实方便快捷,但是对于新手来说,如果不大懂SpringBoot内部启动原理,以后难免会吃亏 ...
- scroll([[data],fn])
scroll([[data],fn]) 概述 当用户滚动指定的元素时,会发生 scroll 事件. scroll 事件适用于所有可滚动的元素和 window 对象(浏览器窗口).大理石平台支架 参数 ...
- 解决eslint与webstorm关于script标签的缩进问题
解决eslint与webstorm关于script标签的缩进问题 2018年12月29日 23:16:29 tozeroblog 阅读数 752 问题重现在vue-cli中,使用eslint时会对 ...
- MySQL实现计算两点之间的距离
DELIMITER $$ CREATE FUNCTION `calculateLineDistance`(startLng double, startLat double, endLng double ...
- HTML学习日记 入门教程 知识点 ing
初学html,如有错误,欢迎指正谢谢. 这只是一些基础的知识点,是学习后自己想到总结的,不适合资深者. 1.href是Hypertext Reference的缩写.意思是指定超链接目标的URL.是cs ...
- 1656:Combination
一本通1656:Combination 1656:Combination 时间限制: 1000 ms 内存限制: 524288 KB提交数: 89 通过数: 49 [题目描述] ...
- c++ 实现等待5s
#include <stdio.h> /* puts, printf */ #include <time.h> /* time_t, struct tm, time, loca ...
- 二十三、Linux任务计划及周期性任务执行:at、crontab命令
一.概述 未来的某时间点执行一次某任务:at, batch周期性运行某任务:crontab 这两个任务的执行结果:会通过邮件发送给用户 (本地终端用户之间的邮件通知) centos 5,6,7默认开启 ...