Добрый день, пытаюсь вызвать вышеназванное через HttpWebRequest. С латиницей все хорошо, но с кириллическими полями возникает проблема:
person_r: "Person (in russian)" field must contain latin or cyrillic letters, digits, spaces or . , - ( ) " & # / + '.
и т.д. при этом поля взяты из их доков ("Василий Николаевич Пупкин")
Собственно способ вызова:
foreach (string key in param.Keys) // param - NameValueCollection со сформированными параметрами
{
parameters.AppendFormat("{0}={1}&",
HttpUtility.UrlEncode(key),
HttpUtility.UrlEncode(param[key])
);
}
var encoded = parameters.ToString().TrimEnd('&');
var request = (HttpWebRequest)HttpWebRequest.Create(ServiceURL);
request.ProtocolVersion = HttpVersion.Version10;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded; charset=utf-8";
using (var writer = new StreamWriter(request.GetRequestStream()))
{
writer.Write(encoded);
}
Не могу понять, в каком формате им нужна кириллица, ибо все сделано по стандарту.