javascript fetch 自动将 http 更改为 https

2022-01-20 00:00:00 fetch javascript

我正在使用以下代码在客户端发出请求:

I am making a request with fetch at the client side with this code:

    var request = new Request(`http://ip:8080/click?url=${value}`, {
        method: 'GET',
        headers: new Headers({
            "Content-Type": "application/json"
        }),
    });
    fetch(request)

但是当浏览器发出请求时,它会自动使用 https 协议更改 URL:

but when the browser makes the request, it automatically changes the URL with https protocol:

https://ip:8080/click?url=${value}

注意:网页有 SSL 加密

Note: the webpage has SSL encryption

随后,我在网页控制台上收到此错误:Failed to加载资源:net::ERR_CONNECTION_CLOSED

Subsequently, I get this error on the webpage console: Failed to load resource: net::ERR_CONNECTION_CLOSED

推荐答案

我遇到了同样的问题,原因是head部分中的以下行:

I had the same problem and the reason was the following line in the head section:

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

它将每个 http 请求替换为 https.

It replaces every http requests with https.

相关文章