我正在使用Laravel 5和一個名爲CORS的庫。我面臨着一個錯誤,我並不真正瞭解它是什麼以及它發生的原因。Laravel 5 CORS - XMLHttpRequest無法加載http://myapi.com。預檢的響應具有無效的HTTP狀態代碼500
我正在開發一個將由網站的前端和應用程序使用的API。
我試圖做一個AJAX調用API:
$.ajax({
url: 'http://myapi.com/call',
type: 'GET',
headers: {'Authorization' : 'Bearer token123'},
crossDomain: true,
contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
success : function(data) { console.log(data);},
error: function(xhr) {console.log(xhr)}
});
但是我得到這個errro:
的XMLHttpRequest無法加載http://myapi.com/call。 預檢的無效HTTP狀態代碼500
但是,當我從請求中刪除以下行時正常工作。
headers: {'Authorization' : 'Bearer token123'},
編輯:我的配置/ cors.php
'supportsCredentials' => false,
'allowedOrigins' => ['*'],
'allowedHeaders' => ['*'],
'allowedMethods' => ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS'],
'exposedHeaders' => [],
'maxAge' => 0,
'hosts' => [],
有關如何解決它的任何想法?
當您的服務器發送200時,您的服務器正在發送500個響應。您能否顯示負責CORS處理的相關服務器端? CORS預檢請求是在「非簡單」請求之前完成的OPTIONS請求,包括具有罕見標題的請求。如果您對CORS一無所知,請參閱http://www.html5rocks.com/en/tutorials/cors/ – apsillers