为什么express服务端返回的js代码给浏览器,状态码是301

发布于 2022-09-13 00:24:19 字数 832 浏览 18 评论 0

const express = require("express");
const app = new express();

app.all("/jsonp-server", (req, res) => {
res.setHeader('Content-Type', 'application/javascript')
// 后端收到请求,调用该回调函数,并将数据作为参数返回去,注意设置响应头返回文档类型,应该设置成javascript
  res.send(`jsonpfun('xixixi')`);
});
app.listen(8080, () => {
  console.log("run on 8080");
});

这是服务端,用express框架写的

<script>
  function jsonpfun(data) {
    document.querySelector("h1").innerText = data;
  }
</script>
<!-- 后端收到请求,调用该回调函数,并将数据作为参数返回去,注意设置响应头返回文档类型,应该设置成javascript -->
<script src="http://127.0.0.1:8080/jsonp-server?callback=jsonpfun"></script>

这是html页面,用了jsonp跨域,在服务端能成功调用jsonpfun()并传入参数,也能正常执行js代码,奇怪的是下面

为啥状态码是304,这里有发生重定向吗?求解谢谢~~

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

你怎么敢 2022-09-20 00:24:19

304 不是重定向呀,他是协商缓存。对于你内容和使用是没有影响

︶葆Ⅱㄣ 2022-09-20 00:24:19

使用的是上面的代码
image.png

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文