我有一个经典的asp页面,可以从Web服务中检索编码的令牌,如下所示:
objXmlHttp.Open "POST", "http://some_web_service", False
objXmlHttp.SetRequestHeader "Content-Type", "application/json"
objXmlHttp.Send something
If objXmlHttp.Status = 200 Then
response.write ("objXmlHttp.ResponseText:"&objXmlHttp.ResponseText)
我在我的objXmlHttp.ResponseText斜杠中看到这样的转义
"...rVw1s\/Qn30..." (see "\" and "/" after "s").
当我通过查询字符串(Response.Redirect)将此令牌发送到另一个Web应用程序的asp.net mvc控制器时,我收到了它,反斜杠也被转义了,就像这样
"...rVw1s\\/Qn30...", that breaks.
我不想替换,如果可能的话,不是在asp(发送令牌)而不是在asp.net mvc(接收令牌)中。
是否可以避免在经典asp中的objXmlHttp中接收转义斜杠?
或许我做错了什么或错过了什么......
答案 0 :(得分:1)
感谢@Lankymart提供有关Json包装要发送的数据的建议:
以这种方式工作:
(没有这个没有用......)*
在一个简单的对象中使用aspJSON序列化编码的令牌(格式如{“token”:“myXYZtoken”}),将序列化对象发送到我的MVC操作方法。
在使用Newtonsoft JsonConvert进入的MVC Action接收器方法中 动态对象
以正确的格式化方式在对象中找到“token”属性。
* N.B:只有没有包装在Json对象中的原始令牌的Server.URLEncode不起作用。