簡體   English   中英

帶導軌的Windows上帶有cURL的POST請求中的錯誤

[英]error in POST request with cURL on windows with rails

當我嘗試使用cURL在本地主機上發布請求時出現以下錯誤。

我發送的請求:

C:\Program Files (x86)\cURL\bin>curl -v -H "Content-type: application/json" -H "Accept: application/json" -X POST http://localhost:3000/users/sign_in -d '{"user": {"email":"email2@email.com", "password":"1234"}}'

這是我得到的錯誤:

    *   Trying ::1...
* Connected to localhost (::1) port 3000 (#0)
> POST /users/sign_in HTTP/1.1
> Host: localhost:3000
> User-Agent: curl/7.46.0
> Content-type: application/json
> Accept: application/json
>
< HTTP/1.1 411 Length Required
< Content-Type: text/html; charset=ISO-8859-1
< Server: WEBrick/1.3.1 (Ruby/2.2.4/2015-12-16)
< Date: Thu, 05 May 2016 19:12:52 GMT
< Content-Length: 303
< Connection: close
<
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML>
  <HEAD><TITLE>Length Required</TITLE></HEAD>
  <BODY>
    <H1>Length Required</H1>
    WEBrick::HTTPStatus::LengthRequired
    <HR>
    <ADDRESS>
     WEBrick/1.3.1 (Ruby/2.2.4/2015-12-16) at
     localhost:3000
    </ADDRESS>
  </BODY>
</HTML>
* Closing connection 0

問題是我的GET請求工作得很好,但POST請求卻不起作用。

我嘗試使用轉義引號:

C:\Program Files (x86)\cURL\bin>curl -v -H "Content-type: application/json" -H "Accept: application/json" -X POST http://localhost:3000/users/sign_in -d "{\"user\": \"{\"email\":\"email2@email.com\", \"password\":\"1234\"}\"}"

錯誤的開始:

    Note: Unnecessary use of -X or --request, POST is already inferred.
*   Trying ::1...
* Connected to localhost (::1) port 3000 (#0)
> POST /users/sign_in HTTP/1.1
> Host: localhost:3000
> User-Agent: curl/7.46.0
> Content-type: application/json
> Accept: application/json
> Content-Length: 7
>
* upload completely sent off: 7 out of 7 bytes

更多HTML / JAVASCRIPT錯誤

  <h2 style="margin-top: 30px">Request</h2>
<p><b>Parameters</b>:</p> <pre>None</pre>

<div class="details">
  <div class="summary"><a href="#" onclick="return toggleSessionDump()">Toggle session dump</a></div>
  <div id="session_dump" style="display:none"><pre></pre></div>
</div>

<div class="details">
  <div class="summary"><a href="#" onclick="return toggleEnvDump()">Toggle env dump</a></div>
  <div id="env_dump" style="display:none"><pre>GATEWAY_INTERFACE: &quot;CGI/1.1&quot;
HTTP_ACCEPT: &quot;application/json&quot;
REMOTE_ADDR: &quot;::1&quot;
REMOTE_HOST: &quot;::1&quot;
SERVER_NAME: &quot;localhost&quot;
SERVER_PROTOCOL: &quot;HTTP/1.1&quot;</pre></div>
</div>

<h2 style="margin-top: 30px">Response</h2>
<p><b>Headers</b>:</p> <pre>None</pre>

</div>


</body>
</html>
* Connection #0 to host localhost left intact

幾天來,我一直在嘗試解決相同的問題,我非常討厭Windows。 有什么建議么?

如對這個問題的答案的注釋中所建議,請嘗試避免使用單引號,而應避免使用其他引號,例如: -d "{\\"user\\": \\"....\\"}"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM