JSON POST与内容类型的X WWW的形式,进行了urlencoded

问题描述:

我试图发送一个JSON请求给第三方API数组参数。这似乎与发送一系列数据(酒店和派对)有关。JSON POST与内容类型的X WWW的形式,进行了urlencoded

我使用RestSharp为它看起来像这样的要求(这只是一个测试,现在,将修复它一旦请求工作)。

var request = new RestRequest(Method.POST); 
     request.AddHeader("content-type", "application/x-www-form-urlencoded"); 

    var client = new RestClient(_Url); 
    request.AddParameter("application/x-www-form-urlencoded", "username=test&password=test&hotels=%5B%7B%22partner_id%22%3A%20%2214%22%7D%5D&start_date=2017-08-01&end_date=2017-08-05&party=%5B%7B%22adults%22%3A%202%7D%5D&lang=en_US&currency=EUR&user_country=GR&device_type=d", ParameterType.RequestBody); 

    IRestResponse response = client.Execute(request); 

当我发送请求时,我收到“max()[function.max]:响应数组必须包含至少一个元素”。

根据供应商有限的文件,要求的格式如下;

username=test 
&password=test 
&hotels=[{"partner_id":"14"},{"partner_id":"16"}] 
&start_date=2013-07-01 
&end_date=2013-07-03 
&party=[{“adults": 2}] 
&lang=en_US 

任何帮助,将不胜感激。

+0

尝试分别添加每个参数吗? request.AddParameter(“姓名”,“值”) –

+0

只是去尝试和接收错误应答的请求无效 – Dave

供应商文档不正确!