TypeError:尝试获取资源时出现NetworkError

时间:2019-10-16 05:08:18

标签: javascript spring-boot firefox-addon fetch-api

我正在尝试让我的Firefox扩展程序与运行在localhost:8080/上的spring boot应用程序之间进行数据收发,而我收到此错误消息。

这是请求-

    var req = new Request("localhost:8080/all", {
        method: 'GET',
        headers: { 'Accept': 'application/json' },
    });

这是localhost:8080/all的控制器功能-

    @GetMapping(path="/all")
    public @ResponseBody Iterable<Product> getAllProducts()
    {
        return productrepository.findAll();
    }

我还向控制器类添加了@CrossOrigin(origins="*")

我已在扩展名清单的"*://localhost/"中添加了permissions

我知道服务器可以正常工作,并且它不是CORS问题,因为我尝试使用curl

curl -H "Origin:https://google.com/" -H "Accept:application/json" -H "method:GET" localhost:8080/all --verbose

它返回了这些响应头以及输出json

< HTTP/1.1 200
< Vary: Origin
< Vary: Access-Control-Request-Method
< Vary: Access-Control-Request-Headers
< Access-Control-Allow-Origin: *

1 个答案:

答案 0 :(得分:0)

发现问题

我决定尝试使用XHR尝试相同的GET请求,并得到状态0和空的responsetext。在搜索可能是找到this answer的原因之后,我在提取API请求中将localhost:8080/all替换为http://localhost:8080/all并成功了。我想这是一个权限问题。