我有这个c#方法
public void TestMethod1()
{
string login = @"partone\afif@gmail.com" ;
string pwd = "ksLLHddf5El";
var request = new RestRequest("https://secureapp4.idshost.fr/authenticationids/restloginservice.php", Method.POST);
request.RequestFormat = DataFormat.Json;
request.AddHeader("Content-type", "application/json;charset=utf-8");
request.AddBody(new { authentifier = login, password = pwd });
RestClient client = new RestClient();
var response = client.Execute(request);
var data = response.Content;
}
问题是登录字符串中的特殊字符\
,它会生成无效的authentifier
参数。
所以我需要知道如何解决这个问题?
答案 0 :(得分:0)
问题可能与接收Rest端点有关。
查看了RestSharp代码后,它正确地序列化了\字符。
因此,当生成JSON时,它将使用两个"partone\\afif@gmail.com"
将您的登录信息转换为\\
。您需要确保端点正确地将其解析回partone\afif@gmail.com
它也有点奇怪,错误是说它是一个无效的参数,因为你是在体内发送它。
甚至更奇怪的是,在您的示例代码中,您尝试发布到WSDL URL。 WSDL用于SOAP Web服务,而不是宁静的Web服务。