javascript - 發(fā)送請(qǐng)求時(shí),時(shí)常在發(fā)起前多一條請(qǐng)求,會(huì)有哪些原因引起?
問題描述
接口都是CORS跨域
多出的一條請(qǐng)求:Request Method:OPTIONS、沒有傳遞參數(shù)
多出的條請(qǐng)求的response headers
Access-Control-Allow-Credentials:trueAccess-Control-Allow-Headers:Access-Control-Allow-Headers, Origin,Accept, X-Requested-With, Content-Type, Access-Control-Request-Method, Access-Control-Request-HeadersAccess-Control-Allow-Methods:POST, GET, PUT, OPTIONS, DELETEAccess-Control-Allow-Origin:*Access-Control-Max-Age:3600Allow:GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS, PATCHConnection:keep-aliveContent-Length:0Date:Fri, 05 May 2017 09:27:40 GMTServer:WildFly/10X-Powered-By:Undertow/1
正常請(qǐng)求的response headers
Access-Control-Allow-Credentials:trueAccess-Control-Allow-Headers:Access-Control-Allow-Headers, Origin,Accept, X-Requested-With, Content-Type, Access-Control-Request-Method, Access-Control-Request-HeadersAccess-Control-Allow-Methods:POST, GET, PUT, OPTIONS, DELETEAccess-Control-Allow-Origin:*Access-Control-Max-Age:3600Connection:keep-aliveContent-Type:application/json;charset=UTF-8Date:Fri, 05 May 2017 09:27:41 GMTServer:WildFly/10Set-Cookie:JSESSIONID=Zv7WiKxKZFNkE6ihLsGfGwYF8ZEFNEFxENl7rNLW.localhost; path=/bridgeTransfer-Encoding:chunkedX-Powered-By:Undertow/1
問題解答
回答1:跨域 post請(qǐng)求,需要option一次
回答2:樓上正解,如果是簡單的跨域請(qǐng)求,建議不要使用POST
回答3:你curl一下你的請(qǐng)求,應(yīng)該就不會(huì)有這樣的預(yù)請(qǐng)求
回答4:1樓正解,跨域請(qǐng)求會(huì)先option一次到服務(wù)端,經(jīng)過服務(wù)端驗(yàn)證通過后,在發(fā)送請(qǐng)求
