美文网首页
关于跨域

关于跨域

作者: _cherry | 来源:发表于2019-03-21 14:59 被阅读0次

    为了不容易忘掉这些东西,还是记录一下。

    跨域的几种方式

    1. 使用插件http-proxy-middleware

    跨过浏览器的限制,通过服务器访问非同源资源,服务器做转发工作。

    var express = require('express')
    var proxy = require('http-proxy-middleware')
    
    var app = express()
    
    app.use('/api', proxy({ target: 'http://www.example.org', >changeOrigin: true }))
    app.listen(3000)
    
    // http://localhost:3000/api/foo/bar -> >http://www.example.org/api/foo/bar
    
    

    2. WebSocket

    WebSocket协议不受同源策略的限制。

    服务器端需要支持websocket协议,客户端进行下面的请求。

    let wsUrl = 'ws://example.com';
    
    let ws = new WebSocket(wsUrl);
    
    ws.onopen = function (event) {
      console.log(event);
    }
    

    可参见WebSocket 协议介绍及 WebSocket API 应用。(查阅资料时,发现这篇文章讲的全面)

    3. CORS

    客户端进行正常的 AJAX 请求,由服务器设置是否允许访问资源。

    4. jsonp

    很简单,不再赘述。


    个人理解,如有错误,请指正。

    相关文章

      网友评论

          本文标题:关于跨域

          本文链接:https://www.haomeiwen.com/subject/ggzfvqtx.html