Angular HTTPClient发送选项而不是删除

时间:2019-10-24 00:53:47

标签: angular laravel

我正在使用角度HTTPClient发送DELETE请求。但是,当我点击服务器时,它会向我发送CORS错误。

    this.httpClient.delete(
      'http://localhost:81/database/management/destroy/users',
      {
        observe: "body",
        withCredentials: false,
        responseType: 'json'
      }
    );

当我发送此方法时,它提示我一个错误:

  

从原点“ http://localhost:81/database/management/destroy/users”到“ http://localhost:4200”处对XMLHttpRequest的访问已被CORS策略阻止:对预检请求的响应未通过访问控制检查:否'Access-Control-Allow-原始”标头出现在所请求的资源上。

我的服务器正在使用PHP laravel,并且还允许跨域到所有域

    public function destroy($databaseName)
    {
        $dbInjectionService = new DatabaseInjectionService();
        $dbInjectionService->output->writeln('Destroy Function Running: ');

        $response = $dbInjectionService->databaseInit('DROP', $databaseName);

        $status = json_decode($response)->response ? 200 : 500;
        return \response($response, $status)
            ->header('Content-Type', 'application/json')
            ->header('Access-Control-Allow-Origin', '*');
    }

但是,我的服务器从不打印任何东西,因为它从来没有达到destroy方法。并说它正在发送OPTIONS的请求标头。我的服务器没有任何身份验证或类似的内容。因此,我猜它不应该要求提供身份验证令牌。

Request Response Image 注意:当我发送带有卷曲的请求时,它可以正常运行,我不知道为什么。

1 个答案:

答案 0 :(得分:-1)

奥拉 Seus标头sãoestes?

观察:“身体”,     withCredentials:否,     responseType:'json'

从头到尾都有标题,从头到尾都是由esperando组成。 Pos ele espera apenas响应类型带有凭证的est indo观察。 Talvez seja isto。