use*_*761 14 web-applications http basic-authentication cors asp.net-web-api
如果包含Basic auth,预检HTTP请求会如何?喜欢以下对话?我无法理解哪些标头需要发送到哪里,也因为无法使用Firebug正确调试它
客户:
OPTIONS /api/resource HTTP/1.1
Access-Control-Request-Method: GET
Origin: http://jsconsole.com
Run Code Online (Sandbox Code Playgroud)
服务器:
HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, PUT, DELETE
Access-Control-Allow-Headers: Authorization
Access-Control-Max-Age: 1728000
Access-Control-Allow-Credentials: true
Run Code Online (Sandbox Code Playgroud)
客户:
GET /api/resource HTTP/1.1
Access-Control-Request-Method: GET
Access-Control-Allow-Credentials: true
Origin: http://jsconsole.com
Run Code Online (Sandbox Code Playgroud)
服务器:
HTTP/1.1 401 Unauthorized
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, PUT, DELETE
Access-Control-Allow-Headers: Authorization
Access-Control-Max-Age: 1728000
Access-Control-Allow-Credentials: true
WWW-Authenticate: Basic realm="Authorisation Required"
Run Code Online (Sandbox Code Playgroud)
客户:
GET /api/resource HTTP/1.1
Access-Control-Allow-Credentials: true
Authorization: Basic base64encodedUserAndPassword
Access-Control-Request-Method: GET
Origin: http://jsconsole.com
Run Code Online (Sandbox Code Playgroud)
服务器:
HTTP/1.1 200 OK
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: POST, GET, PUT, DELETE
Access-Control-Allow-Headers: Authorization
Access-Control-Max-Age: 1728000
Access-Control-Allow-Credentials: true
Run Code Online (Sandbox Code Playgroud)
Bro*_*len 19
如果您正在请求凭据,则服务器必须使用Access-Control-Allow-Origin响应头中的特定源进行响应(因此不能使用通配符*).当然,它也需要响应Access-Control-Allow-Credentials响应头.
| 归档时间: |
|
| 查看次数: |
23906 次 |
| 最近记录: |