chaijs / chai-http

HTTP Response assertions for the Chai Assertion Library.
http://chaijs.com/plugins/chai-http
633 stars 113 forks source link

Update request.js #296

Open ngrecco opened 3 years ago

ngrecco commented 3 years ago

When running the tests in a browser with a PATCH type request, "PATCH" method is sent in all lower case letters. When the request uses CORS, the preflight OPTIONS is triggered before the actual request. This request is sent with the following header: "Access-Control-Request-Method = patch" instead of "Access-Control-Request-Method = PATCH". This causes the "Access-Control-Allow-Methods = GET, POST, OPTIONS, PUT, PATCH, DELETE" to fail, because the expected method is "PATCH" instead of "patch". For further reading please refer to this stack overflow post: https://stackoverflow.com/questions/55250297/problem-with-patch-method-and-cors-preflight-request?rq=1

ngrecco commented 3 years ago

Here you can see the issue replicated with Swagger generated server: https://github.com/swagger-api/swagger-ui/issues/809