vue 项目打包后 请求 url 为file:///D:xxx/xxx/
时间: 2023-08-31 21:09:55 浏览: 65
这是因为在开发过程中,你可能使用了相对路径来引用资源和请求接口,但在打包后,这些相对路径会被替换成绝对路径,而绝对路径在本地文件系统中是以 `file:///` 开头的。
为了解决这个问题,你需要确保在项目中使用的所有相对路径都是相对于根路径的,而不是相对于当前文件的路径。你可以在你的请求接口中使用绝对路径,或者在你的 `vue.config.js` 中配置 `publicPath`,让打包后的文件使用相对路径。
```javascript
module.exports = {
publicPath: './'
}
```
这样打包后的文件就会使用相对路径,而不是绝对路径了。
相关问题
vue打包后请求地址为file:///D:xxx/xxx/
这是因为Vue打包后生成的是静态文件,而不是动态网页,所以需要通过一个Web服务器来访问。你可以使用任何一个Web服务器,比如Apache、Nginx等。以下是使用Node.js的http-server来启动一个本地Web服务器的方法:
1. 在命令行中进入你的Vue项目根目录,安装http-server:
```
npm install http-server -g
```
2. 启动http-server:
```
http-server -p 8000
```
这里的8000是端口号,你可以根据需要修改。启动后,你可以在浏览器中输入http://localhost:8000/来访问你的Vue应用。注意,这里的地址是http协议,而不是file协议。
Access to XMLHttpRequest at 'file:///D:/vue/vue-first/data.json' from origin 'null' has been blocked by CORS policy
回答: 这个错误是由于浏览器的CORS策略引起的。CORS是一种安全机制,用于限制跨域请求。当浏览器发现请求的源与目标不在同一个域时,会发送一个预检请求,检查目标服务器是否允许跨域请求。如果目标服务器没有正确配置CORS头部,浏览器就会拒绝该请求,从而导致这个错误。\[1\]\[2\]
对于你提到的具体错误,'file:///D:/vue/vue-first/data.json'是一个本地文件路径,而'null'是请求的源。由于这是一个本地文件请求,而不是通过HTTP协议请求,所以CORS策略不适用于这种情况。因此,你可以通过将数据文件放在与你的应用程序相同的域中,或者使用服务器来提供数据,以避免这个错误。
#### 引用[.reference_title]
- *1* [Access to XMLHttpRequest at ‘http://xxx‘ from origin ‘http://xxx‘ has been blocked by CORS ...](https://blog.csdn.net/qq_41470439/article/details/109361842)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [前后端分离跨域问题Access to XMLHttpRequest at ‘http://localhos...has been blocked by CORS policy: ...](https://blog.csdn.net/qq_42416602/article/details/121731774)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [Access to XMLHttpRequest at ‘http://xx‘ from origin ‘http://xx‘ has been blocked by CORS policy](https://blog.csdn.net/weixin_51603038/article/details/129319187)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]