十分钟搭建node服务器创建jsonp接口

ajax通过jsonp实现跨域现在变得尤为常见,如何搭建一个node服务器并创建一个jsonp接口呢?

搭建node服务器

注意点: 这里的前端页面为了测试方便放在了static内,在正式开发时需要放在views内部

const Koa = require("koa");
const static = require("koa-static");
const Router = require("koa-router");

let app = new Koa();
let router = new Router();

app.use(static(__dirname+"/static"));

router.get("/",ctx=>{
    ctx.body= "hello world"
});

app.use(router.routes());
app.listen(3000)

前端创建jsonp接口

注意点:

  1. 切记先引入jsonp.js文件
  2. 接口是百度接口用来做测试,正式开发时问后端要接口
<body>
    <h1>百度搜索</h1>
    <input type="text" class="myInput">
    <div class="exchange"></div>
    <script src="jsonp.js"></script>
    <script>
        document.querySelector(".myInput").onblur = function(){
            
            ajax({
                // 引入数据接口,这里为百度接口用来做测试,正式开发时问后端要接口
                url:"https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su",
                // 声明数据类型
                dataType:"jsonp",
                // 传入参数
                data:{
                    wd:this.value
                },
                // 上述代码请求成功后执行的函数
                success:function(res){
                    // 把服务器端反应过来的数据,以参数的形式接收到
                    console.log(res);
                    // 接收数据
                    let data = res.s;
					
					// ES5拼接下变为ES6 两种都可以,具体看自己需求
                    // let html = "<ul>";
                    // data.forEach(v => {
                    //     html += "<li>" + v + "</li>"
                    // });
                    // html += "</ul>";

                    // 遍历数据并把它赋值到页面
                    let html = "<ul>";
                    data.forEach(v => {
                        html += `<li>${v}</li>`
                    });
                    html += "</ul>";

                    document.querySelector(".exchange").innerHTML = html;
                }
            })
        }
    </script>
</body>

以上代码就完成了搭建node服务器和创建了jsonp接口,jsonp封装文件在之前发过,有需要可自行查看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值