Я пытаюсь преобразовать эту команду curl в С#
curl -i 'http://developer.echonest.com/api/v4/artist/profile?api_key=[API KEY]&name=weezer'
Это возвращает заголовок ответа с таким содержимым:
HTTP/1.1 200 OK
Content-Length: 135
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 62
X-RateLimit-Used: 58
Я попробовал этот код, но когда я его запускаю, он получает исключение: «Метод ошибки 405 HTTP не разрешен».
string baseurl = "http://developer.echonest.com/api/v4/artist/profile?api_key=[API KEY]&name=weezer";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(baseurl);
request.Method = "POST";
request.Accept = "application/json";
request.UserAgent = "curl/7.37.0";
request.ContentType = "application/x-www-form-urlencoded";
using (var streamWriter = new StreamWriter(request.GetRequestStream()))
{
string data = "browser=Win7x64-C1|Chrome32|1024x768&url=http://www.google.com";
streamWriter.Write(data);
}
var response = request.GetResponse();
string text;
using (var sr = new StreamReader(response.GetResponseStream()))
{
text = sr.ReadToEnd();
Console.WriteLine(text);
}
Любая помощь будет оценена.
Method
наGET
. - person Daniel   schedule 08.02.2016StreamWriter
? HTTP GET обычно не имеет полезной нагрузки. Попробуйте удалить весь блокusing
. - person Daniel   schedule 08.02.2016request.ContentType
, поскольку вы не отправляете никакой полезной нагрузки. Установитьrequest.Accept = "*/*";
- person Daniel   schedule 08.02.2016response.Headers
? - person Daniel   schedule 08.02.2016