nodejs之理解jsonp原理
一、jsonp实现(构造)原理:
1、疑问:
(1)为什么jsonp的写法中只需要写一个 ? 加 一个参数如callback再结合动态生成script标签就可以得到数据?
(2)jsonp在服务器端怎么形成从而进行传送的呢?
2、思考:从一个nodejs搭建的简易服务器中看,
(1)服务器端接收客户端的request请求时,进行数据寻找收集,并返回数据响应,
① 试验手写的对象,let person1 = {name: “lin”, age: 22};
② 试验文件模块fs读取一个文件夹里面的文件(列表);
let fs1 = require(‘fs’);
let h1 = require(‘http’);
let s1 = h1.createServer();
s1.on(‘request’, function(req, resp) {
fs1.readdir(‘d:/’, function(err, data) {resp.end(data);});
});
// 这里就有个错误,返回的数据不是正确的,它是[object Object],这是我想要的吗?当然不是!所以这时要用JSON的stringify()方法将这个文件列表包装成保存为正确的格式,以防数据变质变样,之后客户端再用JSON的parse()方法解析转换一下就行。
// 同理,上面的对象数据也要这样做
(2)保存为正确的数据格式后,在服务器端就把数据塞进参数中,请求路径中的callback这个参数相当于一个函数,数据传送回来时就是携带了响应数据的函数。