При попытке подключиться к API-интерфейсу Urban Airship я получаю ошибку 400 ошибок. Ниже приведена команда curl, которую я пытаюсь реплицировать в .NET. Код .NET находится в конце. Пожалуйста помоги.Подключение к REST API для городского дирижабля с помощью C#
curl -v -X POST -u "username:passowrd" -H "Content-type: application/json" -H "Accept: application/vnd.urbanairship+json; version=3;" --data '{"audience" : {"tag":"1_13_98"}, "device_types" : "all", "notification" : {"alert": "Tag push alert"} }' https://go.urbanairship.com/api/push
C# код, который я пытаюсь использовать это:
var json = gcm.ToJsonString();
Console.WriteLine("JSON GCM Message: " + json);
var uri = new Uri("https://go.urbanairship.com/api/push/?");
var encoding = new UTF8Encoding();
var request = (HttpWebRequest)WebRequest.Create(uri);
request.Method = "POST";
request.Credentials = new NetworkCredential(username, master);
request.ContentType = "application/json";
WebHeaderCollection myWebHeaderCollection = request.Headers;
myWebHeaderCollection.Add(HttpRequestHeader.Accept, "application/vnd.urbanairship+json; version=3;");
request.ContentLength = encoding.GetByteCount(json);
using (var stream = request.GetRequestStream())
{
stream.Write(encoding.GetBytes(json), 0, encoding.GetByteCount(json));
stream.Close();
var response = request.GetResponse();
response.Close();
}
return true;
API-интерфейс для urbanAirship можно найти здесь: http://docs.urbanairship.com/reference/api/v3/push.html
А вот пример запрос. .
POST /api/push HTTP/1.1
Authorization: Basic <master authorization string>
Content-Type: application/json
Accept: application/vnd.urbanairship+json; version=3;
{
"audience" : {
"device_token" : "998BAD77A8347EFE7920F5367A4811C4385D526AE42C598A629A73B94EEDBAC8"
},
"notification" : {
"alert" : "Hello!"
},
"device_types" : "all"
}
Исключение брошено в следующая строка: theWebHeaderCollection myWebHeaderCollection = request.Headers; myWebHeaderCollection.Add (HttpRequestHeader.Accept, "application/vnd.urbanairship + json; version = 3;"); – GMan
Если я удалю строку, возвращается 400 Bad Request. – GMan
Какое исключение возникает при попытке добавить в коллекцию заголовков? –