微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

包裹服务为 SourceMap 请求和不存在的 url 返回 index.html

如何解决包裹服务为 SourceMap 请求和不存在的 url 返回 index.html

使用包裹设置的普通香草打字稿开发环境。

我在浏览器(Edge/Chrome)中没有 SourceMap:

DevTools Failed to load SourceMap: Could not parse content for http://localhost:1234/index.7cacc1f4.js.map: Unexpected token < in JSON at position 0

页面加载后的包裹服务日志:

$ parcel serve ./src/index.html --log-level verbose
ℹ️ Server running at http://localhost:1234
✨ Built in 3.15s
@parcel/reporter-dev-server: Request: localhost:1234/
@parcel/reporter-dev-server: Request: localhost:1234/index.7cacc1f4.js
@parcel/reporter-dev-server: Request: localhost:1234/index.7cacc1f4.js.map
@parcel/reporter-dev-server: Request: localhost:1234/favicon-32x32.232ca4f5.png

SourceMap 文件dist 中:

$ ls dist
__                              favicon-32x32.232ca4f5.png      index.453c97a0.js.map
apple-touch-icon.8e36bc09.png   favicon-32x32.a91f4dac.png      index.7cacc1f4.js
apple-touch-icon.e80caf23.png   index.031565ba.js               index.7cacc1f4.js.map
favicon-16x16.bc10cd1f.png      index.031565ba.js.map           index.html
favicon-16x16.d41cdce3.png      index.453c97a0.js

似乎 parcel serve 返回的是索引页而不是 SourceMaps:

$ curl -v localhost:1234/index.7cacc1f4.js.map 
*   Trying ::1...
* TCP_NODELAY set
* Connected to localhost (::1) port 1234 (#0)
> GET /index.7cacc1f4.js.map HTTP/1.1
> Host: localhost:1234
> User-Agent: curl/7.64.1
> Accept: */*
> 
< HTTP/1.1 200 OK
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Methods: GET,HEAD,PUT,PATCH,POST,DELETE
< Access-Control-Allow-Headers: Origin,X-Requested-With,Content-Type,Accept,Content-Type
< Content-Length: 630
< Content-disposition: inline; filename="index.html"
< Accept-Ranges: bytes
< Last-Modified: Sun,21 Mar 2021 17:09:09 GMT
< Content-Type: text/html; charset=utf-8
< Date: Sun,21 Mar 2021 17:13:40 GMT
< Connection: keep-alive
< Keep-Alive: timeout=5
< 
<!DOCTYPE html>

<html lang="en">
  [....]
</html>
* Connection #0 to host localhost left intact
* Closing connection 0

来自上面 curl 的包裹日志:

@parcel/reporter-dev-server: Request: localhost:1234/index.7cacc1f4.js.map

包裹版本:2.0.0-beta.2

同样奇怪的是,包裹服务没有返回 404,只是在找不到页面重定向到索引?

@parcel/reporter-dev-server: Request: localhost:1234/asfsdfs.x
@parcel/reporter-dev-server: Request: localhost:1234/index.7cacc1f4.js
@parcel/reporter-dev-server: Request: localhost:1234/index.7cacc1f4.js.map
@parcel/reporter-dev-server: Request: localhost:1234/favicon-32x32.232ca4f5.png
@parcel/reporter-dev-server: Request: localhost:1234/__/static/site.webmanifest

解决方法

这是包 2 中的一个错误,但已在当前的每晚构建中修复: https://github.com/parcel-bundler/parcel/issues/6078

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。