获取第三方接口推送的数据,应该怎么实现?
本人 新手一个。
http://open.yto.net.cn/interfaceDocument/menu250/submenu256
我在做 圆通快递 物流信息对接,订阅物流信息。圆通实时推送物流信息,回调地址处,Controller因该怎么实现
需要考虑 推送数据的形式吗?例如是以form还是以body的形式
以下是我自己实现的代码,不知道对不对?
[HttpPost]
public String Yuantong_Push()
{
byte[] byts = new byte[Request.InputStream.Length];
Request.InputStream.Read(byts, 0, byts.Length);
string param = System.Text.Encoding.Default.GetString(byts);
try
{
Dictionary<string, string> dic = new Dictionary<string, string>();
string[] spl = param.Split('&');
foreach (string s in spl)
{
int splIdx = s.IndexOf('=');
string key = s.Substring(0, splIdx);
string value = s.Substring(splIdx + 1);
dic.Add(key.Trim(), value.Trim());
}
string contentJson = JsonConvert.SerializeObject(dic);
return proxy.insertYuantongPush(contentJson.UrlDecode());
}
catch (Exception ex)
{
return "<Response><logisticProviderID>YTO</logisticProviderID><txLogisticID>" + param + "</txLogisticID><success>false</success><reason>" + ex + "</reason></Response>";
}
}