Fixing same-origin AJAX requests

jQuery sends multiple values for the `X-REQUESTED-WITH` header if it has already been set, even when the value is the same. This means that same-origin requests would send `X-REQUESTED-WITH: XMLHttpRequest, XMLHttpRequest` which isn't detected as AJAX by Laravel/Symphony.

To fix this issue while retaining the crossDomain usage of framework.js, I've used `crossDomain: false` to trick jQuery into sending the header anyways on cross-origin requests. This is still changeable by the user in the `ajaxSetup` event.
This commit is contained in:
Luke Towers 2017-02-15 09:56:43 -06:00 committed by GitHub
parent 178ac8f76b
commit cdc8b23fd4
1 changed files with 1 additions and 1 deletions

View File

@ -65,7 +65,6 @@ if (window.jQuery.request !== undefined) {
}
var requestHeaders = {
'X-REQUESTED-WITH': 'XMLHttpRequest',
'X-OCTOBER-REQUEST-HANDLER': handler,
'X-OCTOBER-REQUEST-PARTIALS': this.extractPartials(options.update)
}
@ -76,6 +75,7 @@ if (window.jQuery.request !== undefined) {
var requestOptions = {
url: window.location.href,
crossDomain: false,
context: context,
headers: requestHeaders,
success: function(data, textStatus, jqXHR) {