美文网首页
Jsonp的实现原理

Jsonp的实现原理

作者: 最爱喝龙井 | 来源:发表于2019-08-13 09:21 被阅读0次

1. Jsonp

Jsonp: 主要是用来获取跨域的请求,由于同源策略的限制,我们不能获取跨域的资源

2. Jsonp的实现原理

由于script不受同源策略的限制,因此我们可以通过动态创建script标签来获取跨域的资源

3. Jsonp的具体实现

客户端代码,如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <script>
        function showscript(data) {
            console.log('hello world');
            console.log(data);
            console.log(data.name)
        }
    </script>
    <script src="http://localhost:8080/getSome?callback=showscript"></script>
</body>
</html>

我们定义了一个script标签,src属性指向的是我们后端定义好的接口,callback=showscript表示的是我们前端定义的方法的名称传给后端,后端可以解析出来调用,防止写死

node后端代码,如下

const http = require('http');
const urlModel = require('url');

let server = http.createServer();

server.on('request', function(req, res) {
    var url = req.url;
    var obj = urlModel.parse(url, true);
    var data = {
        name: 'jason',
        age: 18,
        gender: 'male'
    }
    if(obj.pathname == '/getSome') {
        var str = `${obj.query.callback}(${JSON.stringify(data)})`
        res.end(str);
    }
})
server.listen(8080, function() {
    console.log('running...')
})

最终控制台输出,如下:

image.png

相关文章

  • day02-vuejs-vue-resource实现get, p

    vue-resource实现get, post, jsonp]请求: JSONP的实现原理: 由于浏览器的安全性限...

  • 遇到的面试题

    null instanceOf Object false jsonp跨域原理,优缺点,安全性因素 jsonp的实现...

  • JSONP的历史方案和实现原理

    1. JSONP的实现原理 JSONP是通过动态创建script实现的。请求方:frank.com 的前端程序员(...

  • 跨域方案

    JSONP JSON with padding 简称JSONP ,实现原理 通过动态 元素,指定src属性为一个跨...

  • 跨域

    解决跨域方法:jsonp,代理,cors jsonp实现原理:动态创建script标签 ,因为script中的sr...

  • JSONP实现原理

    JSONP:JSON With Padding 含义:可以理解为请求后端API,服务器会在传给浏览器前将JSON数...

  • JSONP

    1.jsonp是用来实现跨域通信的一种方法。原理如下: 2.jsonp实现过程: 大家的约定为: callback...

  • 手写一个JSONP(promise封装)

    前言 JSONP以前研究过,最近又有点忘了,写篇本文mark一下,旨在理解记住JSONP的原理及其实现。代码实现用...

  • Jsonp的实现原理

    1. Jsonp Jsonp: 主要是用来获取跨域的请求,由于同源策略的限制,我们不能获取跨域的资源 2. Jso...

  • JSONP原理

    只要说到跨域,就必须聊到JSONP,就必须讲一下JSONP的实现原理,以及在项目中哪个需求使用了JSONP,简单讲...

网友评论

      本文标题:Jsonp的实现原理

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