我目前正在为Angular前端开发一个Laravel API。
我已经设置了
'supportsCredentials' => false,
'allowedOrigins' => ['*'],
'allowedHeaders' => ['*'],
'allowedMethods' => ['*'],
'exposedHeaders' => [],
'maxAge' => 0,
用于在cors.php中进行测试,一切正常,除了一次调用,它给我一个Access-Control-Allow-Origin错误。
这是使用URLSearchParams的获取请求:
const params: URLSearchParams = new URLSearchParams();
params.append('posts', JSON.stringify(postIds));
const headers = new Headers();
headers.append('Content-Type', 'application/json');
const options = new RequestOptions({ headers: headers, params: params });
this.http.get(environment.apiEndpoint + 'reactions/sounds/', options){...}
我已经尝试将其更改为POST请求,因为我认为可能GET与params是问题,但我得到了相同的东西。
大多数请求(来自同一页面和来源)如何成功,但这个请求不成功?
它适用于localhost,但不适用于远程服务器。
Laravel的路线设置如下:
Route::get('reactions/sound/{id}', function (Request $request, $id) {
...
});
Route::get('reactions/sounds', function (Request $request) {
...
});
第一个起作用,第二个起作用。