跨域

cors方法
让目标地址允许跨域-在目标地址响应数据钱,设置一个响应头,允许跨域的响应头
require('http').createServer((req,res)=>{
  res.setHeader('Access-Control-Allow-Origin','*')
  res.end('这是响应内容')
}).listen(9002)

jsonp跨域方式

html的某些标签,就可以不受同源策略影响,例如:link script img;利用这些标签完成跨域,利用script标签,将请求回来的数据,当作js代码执行

proxy服务器代理完成跨域

//下载nmp i http-proxy-middlewary
//导入
const httpProxyMiddleware=requir('http-proxy-middleware')
//调用方法,配置代理
let fn=httpProxyMiddlewary.createProxyMiddleware({
     target:目标地址,
     changeOrigin:true,
     pathRewrite:{
            当前的请求地址:'  '
   }
})
利用放回的函数去处理这次请求
返回的函数(req,res)
const httpProxyMiddleware=require('http-proxy-middleware')//导入
let fn=httpProxyMiddleware.createProxyMiddleware({//调用方法配置代理
      target:'http://localhost:9002',//请求的目标地址
      changeOrigin:true,//假装自己跟目标地址是同源
      pathRewrite:{
              //希望自己请求的路径/api能变成target的地址
             //但实际上的请求地址是:target+/api
             //需要虫实际请求地址中,将api去掉

            '/api':''//将实际地址中的/api设置为空
     }
})
require('http').createServer((req,res)=>{
       if(req.uri==='/'){
            res.end(require('fs'),readFileSync('响应页面路径'))
    }else if(req.uri==='/api'){
            fn(req,res)
}
}).listen(9001)

 

posted @ 2022-06-09 21:26  健生  阅读(66)  评论(0)    收藏  举报