作者kanoto (生活)
看板C_Sharp
标题NetCore post 以Soap档呼叫
时间Fri Nov 9 18:00:44 2018
目前在做一份专案
透过第三方订单更新通知
指定自己API网址之後 每更新一次订单它会吐一份Soap格式档到API的Post
但是问题来了
1.
因为还无法测试这第三方功能 只能透过postman去丢一个暂时Soap来测试
在netcore api post这边我的参数是这样写:
public NotificationResponse Post([Frombody]string SoapRequest)
{
//把soap字串接到後再进行读取其中ID动作
}
请问在postman时 我要post Soap过去 势必要在body部分设定格式为Json
才能因为[FromBody]去读取我丢的Soap
但是在postman我不知道怎麽把soap写成字串模式...好像因为不是正确格式
而无法执行post
2.
後来有看到postman那边可以选取格视为xml(text/xml)
想说可不可以透过这个直接丢soap过去 在透过soap反序列化在带参数自动转成物件
public NotificationResponse Post([Frombody]SoapModel SoapRequest)
{
//此时SoapRequest
}
但是也不知道为何没有执行post或是参数部分都是为Null
想请教是否有相关经验的前辈可以解惑
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.216.94.228
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1541757647.A.BA5.html
1F:推 imrbo: 这问题我有遇到过,如果用string去接遇到‘{’会说违法字元 12/22 02:14
2F:→ imrbo: 要吗就是改成json格式接 public NotificationResponse Post 12/22 02:15
3F:→ imrbo: ([Frombody] newtonsoft.json.linq.jobject SoapRequest) 12/22 02:15
4F:→ imrbo: 12/22 02:15
5F:→ imrbo: { 12/22 02:15
6F:→ imrbo: 12/22 02:15
7F:→ imrbo: //把soap字串接到後再进行读取其中ID动作 12/22 02:15
8F:→ imrbo: 12/22 02:15
9F:→ imrbo: } 12/22 02:15
10F:→ imrbo: 要嘛就编码base64近来在解 12/22 02:15