C#POST 支付宝/微信回调接口
一般支付宝/微信的回调接口都会返回xml格式,下面是调用类似这种接口的办法:
public async Task<string> GetData()
{
string requestUrl = "http://localhost:xxx/xx/xxxx/xxx/xxxx";//请求的接口URL
string contentType = "application/x-www-form-urlencoded";//请求文本类型
string result = string.Empty;//返回结果,xml格式的字符串
using (var client = new HttpClient())
{
object data = null;
string str = JsonHelper.Instance.Serialize(data);//一般这种接口的请求参数都是空的,也就是不需要请求参数
var content = new StringContent(str)
{
Headers = { ContentType = new MediaTypeHeaderValue(contentType) }
};
HttpResponseMessage resp = await client.PostAsync(requestUrl, content);
resp.EnsureSuccessStatusCode();//返回http响应状态码
result = resp.Content.ReadAsStringAsync().Result;//<xml><return_code><![CDATA[{0}]]></return_code><return_msg><![CDATA[{1}]]></return_msg></xml>
return result;
}
}
下面介绍基本接口POST的办法,文本格式一般是JSON格式去请求:
public async Task<Result> GetData()
{
string requestUrl = "http://xxxxxxxx/xxxx/xxx/xxx/xxx";//请求的接口URL
string signData = "lrfVUpo8uCHvhPXEd6PsUH82XEkc+kUyQYDssRlop1AcbY5WXH0kWAWhAioQCwl5N+lZGDijqH67aaBcICa7LJOAN1r7z0H8ghNKOROW2ugGX6x7dZKeZA0GmfJsuNK30eONDu6GdTTnZGgEJsPepxh/AIFJZYdN6RVseIDJAwQ=";
string data = "eyJJc1N1Y2Nlc3MiOnRydWUsIkNvZGUiOiIwMDUyMDE4MTAyNDI1NDkyODIiLCJEZXNjcmlwdGlvbiI6IuaTjeS9nOaIkOWKnyJ9";
object obj = new { SignData = signData, Data = data };//使用匿名类构造object
string result = string.Empty;
using (var client = new HttpClient())
{
string str = JsonHelper.Instance.Serialize(obj);
var content = new StringContent(str)
{
Headers = { ContentType = new MediaTypeHeaderValue("Application/json") }
};
HttpResponseMessage resp = await client.PostAsync(requestUrl, content);
if (resp.IsSuccessStatusCode)
{
result = resp.Content.ReadAsStringAsync().Result;
}
return JsonHelper.Instance.Deserialize<Result>(result);//这里返回的是字符串,JSON格式数据
}
}
后续可以序列化字符串为对象
C#POST 支付宝/微信回调接口的更多相关文章
- thinkphp框架对接支付宝即时到账接口回调的代码
关于支付宝即时收款接口的对接过程,很简单,也有很多人发过,我这里就不在啰嗦了,对接完成后,在线支付成功后的回调,相对来说,是个难点,,我重点分享下我的经验. 我在开发二代旅游CMS(http://ww ...
- iOS 微信和支付宝关于回调处理
在支付这一块,发现讲支付集成的比较多,但是关于支付后回调处理的不多见,(当时因为这个问题懵逼了好久)就自己总结一下, 1.支付宝回调 支付宝的回调想对来说比较简单一些,因为支付宝的回调就在调起支付宝的 ...
- IOS 支付宝、微信回调传值给H5网页
这里用是的苹果原生和JS的交互 .有不明白JavaScriptCore框架的可以去网上搜索下这方面的资料很多废话不多说直接上代码 @protocol JSContextDelegate <JSE ...
- PHP九大接口视频教程( 支付宝,QQ,短信接口,微信接口开发, 支付宝即时到账接口开发三级分销全套)
PHP九大接口视频教程( 支付宝,QQ,短信接口,微信接口开发, 支付宝即时到账接口开发三级分销全套) 需要的联系我:QQ: 1844912514 PHP九大接口视频教程( 支付宝,QQ,短信接口 ...
- android app使用微信登录接口回调没有被执行的问题研究
本人开发的一个app使用了sharesdk集成微信登录功能,在测试的过程中微信授权登录界面有调用,但是授权后原应用的回调没有被执行 应用的包名是com.kimi.searcher 首先,确认微信点击授 ...
- 微信支付接口--支付成功的回调--超详细Demo
如果本文对你有用,请爱心点个赞,提高排名,帮助更多的人.谢谢大家!❤ 如果解决不了,可以在文末进群交流. 如果对你有帮助的话麻烦点个[推荐]~最好还可以follow一下我的GitHub~感谢观看! 写 ...
- ThinkPHP整合支付宝即时到账接口调用
首先是在支付宝的蚂蚁金服开放平台下载PHP的demo: https://doc.open.alipay.com/doc2/detail?treeId=62&articleId=103566&a ...
- 移动支付--银联,支付宝,微信(android)
在这个移动互联网快速发展的时代,手机已经成为人们生活或者出行之中必不可少的设备了,如今非常多城市的商户都能够採用支付宝,微信支付了.人们出门仅仅须要随身携带带手机.不用带大量现金就能够放心购物了.如今 ...
- ThinkPHP 5 整合支付宝微信支付(支付宝H5,微信H5、APP支付、公众号支付)
因项目没有PC站所以没有写电脑网站支付. Pay.php支付控制器 <?php // +----------------------------------------------------- ...
随机推荐
- javaEE Design Patter(1)初步了解23种常用设计模式
设计模式分为三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥接模式.组合模式.享元模式. ...
- java计数
计数 package com.demo; import java.util.Timer; import java.util.TimerTask; import java.util.concurrent ...
- maven(5)--依赖特性
依赖的子标签中有scope,常用值有compile.provide.test.runtime compile:编译范围有效,即编译和打包时都会将这个依赖存储 provide:编译测试有效,但是打包是将 ...
- Python中@修饰符的作用。
'@'符号用作函数修饰符是python2.4新增加的功能,修饰符必须出现在函数定义前一行,不允许和函数定义在同一行.也就是说@A def f(): 是非法的. 只可以在模块或类定义层内对函数进行修饰, ...
- php查找字符串中第一个非0的位置截取
$str = '00000000000000000000000000000000000000001234506'; $preg = '/[0]*/'; $result = preg_replace($ ...
- 13_Redis安全
[1.设置密码] [2.绑定IP] [3.命令禁止或重命名] [4.修改默认端口]
- Redis缓存方案
1 Redis简介 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发 ...
- SQL Server ->> OFFSET & FETCH子句
SQL Server 2012引入OFFSET + FETCH字句.它俩出现在SELECT .... ORDER BY ...后面.作用是告诉SQL Server在结果集中忽略前N行然后取前M行出来. ...
- 爬虫入门之Scrapy框架实战(新浪百科豆瓣)(十二)
一 新浪新闻爬取 1 爬取新浪新闻(全站爬取) 项目搭建与开启 scrapy startproject sina cd sina scrapy genspider mysina http://roll ...
- Linux下配置免密登录!
ssh-keygen 产生公钥与私钥对. ssh-copy-id 将本机的公钥复制到远程机器的authorized_keys文件中,ssh-copy-id也能让你有到远程机器的home, ~./ss ...