Когда я делаю почтовый запрос, используя следующее
curl -i -d "username=rock&password=rock" http://my_VM_IP/api/1.1/json/my_login/
он генерирует требуемый ответ, генерируя такой токен (сокращенно):
HTTP/1.1 200 OK
Date: Mon, 22 Oct 2012 08:37:39 GMT
Vary: Authorization,Accept-Language,Cookie,Accept-Encoding
Content-Type: text/plain
Transfer-Encoding: chunked
OK{"success": {"my_token": "required_token"}}
Но когда я пытаюсь сделать то же самое, включая заголовок, как:
curl -i -H "Content-Type:application/json" -d "username=rock&password=rock" http://my_VM_IP/api/1.1/json/my_login/
это дает мне следующую ошибку:
HTTP/1.1 400 BAD REQUEST
Date: Mon, 22 Oct 2012 11:12:04 GMT
Vary: Authorization,Accept-Language,Cookie,Accept-Encoding
***Content-Type: text/plain***
Content-Language: en-us
Connection: close
Transfer-Encoding: chunked
Bad Request
Я не понимаю, почему это происходит. А также почему тип содержимого показывает text/plain, я также пытался рассмотреть некоторые другие вопросы, такие как Почему установка POST Content-type:Application/Json вызывает неверный запрос в REST WebService? а> . Он также решает ту же проблему, что и у меня. После ответа в том, что я попытался предоставить данные в различных форматах как
{"username":"rock", "password":"rock"}
но безуспешно. Заранее спасибо.