Javascript Fetch API: header params not working

后端 未结 1 1565
我寻月下人不归
我寻月下人不归 2021-01-18 03:49

This is my sample request:

var header = new Headers({
  \'Platform-Version\': 1,
  \'App-Version\': 1,
  \'Platform\': \'FrontEnd\'
});

var myInit = {
  met         


        
相关标签:
1条回答
  • 2021-01-18 04:11

    You are using it correctly, but you have to tell your backend service to allow custom headers (X-). For example, in PHP:

    header("Access-Control-Allow-Headers: X-Requested-With");
    

    Also, your custom headers should be prefixed with X-. So you should have:

    'X-Platform-Version': '1'
    

    And one last thing, your mode needs to be cors.

    You can see that standard headers are being sent with the following code. take a look at the network tab to see the standard request headers.

    var header = new Headers();
    
    // Your server does not currently allow this one
    header.append('X-Platform-Version', 1);
    
    // You will see this one in the log in the network tab
    header.append("Content-Type", "text/plain");
    
    var myInit = {
        method: 'GET',
        headers: header,
        mode: 'cors',
        cache: 'default'
    }
    
    fetch('http://localhost:3000/api/front_end/v1/login', myInit)
        .then(res => {
            console.log(res.text())
        });
    
    0 讨论(0)
提交回复
热议问题