【发布时间】:2018-05-08 04:59:22
【问题描述】:
我已按照在我的 rails 应用程序中设置设计令牌身份验证的所有说明进行操作,但首先我尝试使用 curl 测试身份验证系统,以便我知道要包含在我的 react fetch 代码中的正确参数。
使用设计令牌身份验证的官方文档以及另一个 stackoverflow 帖子(显示注册但未登录),我能够弄清楚如何使用 curl 注册用户。使用 curl 注册会返回 uid、客户端 ID 和访问令牌,但根据文档,登录也应该返回这些值,我需要能够存储它们以进行会话控制。
这是我的 curl(myserver.com 和 myphonenumber 是实际 url 和电话号码的占位符)
curl -POST -v -H 'Content-Type: application/json' https://myserver.com/auth/sign_in -d '{"email": "test@test.com", "password": "rabbit"}'
返回以下响应:
> POST /auth/sign_in HTTP/1.1
> Host: myserver.com
> User-Agent: curl/7.54.0
> Accept: */*
> Content-Type: application/json
> Content-Length: 54
>
* upload completely sent off: 54 out of 54 bytes
< HTTP/1.1 200 OK
< Server: nginx/1.6.2
< Date: Tue, 08 May 2018 04:47:02 GMT
< Content-Type: application/json; charset=utf-8
< Transfer-Encoding: chunked
< Connection: keep-alive
< Vary: Accept-Encoding
< Vary: Accept-Encoding
< X-Frame-Options: SAMEORIGIN
< X-XSS-Protection: 1; mode=block
< X-Content-Type-Options: nosniff
< ETag: W/"54281896f954d99dcd6989e8e82e7d79"
< Cache-Control: max-age=0, private, must-revalidate
< X-Request-Id: 1f619b39-87d4-44f4-9990-c0804a2a0a74
< X-Runtime: 0.311010
< Front-End-Https: on
<
* Connection #0 to host myserver.com left intact
{"data":{"id":12,"email":"test@test.com","provider":"phone","uid":"test@test.com","name":null,"image":null,"phone_number":"myphonenumber"}}
我觉得我的 POST 可能缺少标题或其他东西......但它给我的输出并没有提供太多线索。我知道名称和图像被标记为空,但从我在文档中阅读的内容来看,它们似乎没有必要。此外,如果我缺少参数,它通常会给我一个 400 错误请求。
【问题讨论】:
标签: authentication curl post devise jwt