Access Control for Cross-site Requests DESIGN DECISION FAQ ** Why is there a second check for non-GET requests? For non-GET requests two checks with Access-Control HTTP headers and processing instructions are performed. Initially a "permission to make the request" check is done on the response to the authorization request. And then a "permission to read" check is done on the response of the actual request. Both of these checks need to succeed in order for success to be relayed to the protocol (e.g. XMLHttpRequest). ** Why are cookies and authentication information sent in the request? Sending cookies and authentication information enables user-specific cross-site widgets (external XBL file). It also allows for a user authenticated data storage API that services can use to store data in. Cookies and authentication information is already sent cross-site for the HTML ,