vue克隆v2ex网站随记
- vue克隆v2ex网站随记
- 核心技术框架
- 实现功能
- 随记
- 反向代理
- 发布
vue克隆v2ex网站随记
核心技术框架
- vue
- vue-resource
- vue-router
- bootstrap
- v2ex api
- proxy 反向代理技术
实现功能
- 基本克隆www.v2ex.com的功能
- 自适应功能
- 利用反向代理跨域访问v2ex api
随记
克隆www.v2ex.com的页面样子并不困难,主要是在使用v2ex的api的时候遇到了不少问题,由于不同域的原因,就必须使用跨域解决,vue-resource提供了很好的跨域访问工具,在以前我用它来访问豆瓣的api的时候是没有问题的,但在这里就返回了ok=false
d的结果,而在f12下的network的status是200,并有正确的返回结果,这就让我很郁闷了。
最后查了不少资料,最可恨的是对于v2ex api的介绍少之又少,不过天无绝人之路,况且以前克隆郭v2ex的大有人在,最终被我发现了一个大招,vue-cli提供的proxyTable的配置,即反向代理。
反向代理
反向代理(Reverse Proxy)方式是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
在vue-cli中只需在config/index.js中配置
proxyTable: {'/api': {target: 'https://www.v2ex.com',changeOrigin: true,pathRewrite: {'^/api': '/api'}}},
changeOrigin
参数,接收一个布尔值,如果设置为true
,那么本地会虚拟一个服务端接收你的请求并代你发送该请求,这样就不会有跨域问题了,不过只适用于开发环境。
然后在使用this.$http.get('/api/xxxx/xxx')
即可获取数据。
发布
由于我的服务器是使用apache2,我就按照apache2的配置教程来配置对于v2ex的api的反向代理,然而又发现了一个问题,由于v2ex的api是使用https来进行传输的,最后怎么配置也没法配对,都会显示500错误,这是待解决问题。
之后我选择了nginx作为网站服务器,发现nginx的配置真是简单多了,先安装
- sudo apt-get install nginx
- 修改/etc/nginx/sites-enabled/default
,增加
location ^~ /static/ {gzip_static on;expires max;add_header Cache-Control public;
}location / {try_files $uri $uri/ /index.html;
}location /api { proxy_pass https://www.v2ex.com;proxy_buffers 16 4k;proxy_buffer_size 2k;
}
github:vue-clone-v2ex
demo:v2ex.alispace0.com
参考资料:
v2ex-frontend
v2ex-api
vue克隆v2ex网站随记相关推荐
- vue.js创建网站实例1
搭建项目环境 网上的教程很多,随便搜一个,参考: https://blog.csdn.net/weixin_43844158/article/details/89788002 1)下载并安装node. ...
- java计算机毕业设计vue平顶山香山寺网站源码+数据库+系统+lw文档
java计算机毕业设计vue平顶山香山寺网站源码+数据库+系统+lw文档 java计算机毕业设计vue平顶山香山寺网站源码+数据库+系统+lw文档 本源码技术栈: 项目架构:B/S架构 开发语言:Ja ...
- 【困扰了很久,实测已解决】MacBook上不了V2EX网站但Windows可以
[困扰了很久,实测已解决]MacBook上不了V2EX网站但Windows可以 背景 为什么 MacOS 上不了 V2EX 网站 (https://www.v2ex.com/)? 而 MacBook ...
- 基于Springboot+Mybatis+mysql+vue宠物领养网站1.0
基于Springboot+Mybatis+mysql+vue宠物领养网站 一.系统介绍 二.功能展示 1.主页(普通用户) 2.登陆.注册(普通用户) 3.宠物大全(普通用户) 4.宠物详情(申请领养 ...
- 防不胜防,你可能访问了一个被克隆的网站
我们来看一下以下这2个网址:http://www.lcbc.com.cn.http://www.baiud.com,在此之前大家有没有发现有什么异样?仔细一看,大家会发现,工商银行的官网域名中的i被替 ...
- wordpress克隆站点_如何通过7个简单步骤克隆WordPress网站
wordpress克隆站点 Generally speaking, cloning is considered an unethical practice. However, when you thi ...
- HTTrack - 克隆任意网站
HTTrack可以克隆指定网站-把整个网站下载到本地. 可以用在离线浏览上,也可以用来收集信息(甚至有网站使用隐藏的密码文件). 一些仿真度极高的伪网站(为了骗取用户密码),也是使用类似工具做的. K ...
- 开源案例:Spring Boot + Vue 的音乐网站
不知不觉这居家隔离也快一个月了,上海发布这每天增长的数字,也让人不知道什么时候是个头,不少居家许久的邻居,甚至拿出了低音炮享受起了音乐. 所以今天和大家分享一个音乐网站吧. music-website ...
- Prerender.io 配置过程 给你的VUE单页面网站增加一点seo吧~
prerenderio 的使用和配置 作为一个网站,要想给别人搜索到,那么就要依靠搜索引擎的爬虫.那么我们如何让搜索引擎爬虫收录网站的信息呢?那就需要网站确实有信息: meta标签的关键词 meta的 ...
最新文章
- 复旦教授:在一般院校里,我可能连当副教授都不够格
- 天数换算月份_Js 计算指定月份的天数
- ABAP程序系统字段中英文详解
- hadoop上传文件报错
- 034 Maven中的dependencyManagement和dependencies区别
- 天锐绿盾解密_天锐绿盾签约兴威 助力食品行业信息防泄漏
- 三菱Q PLC解密 用户名功能块FB破解
- Frenet和笛卡尔坐标系互转
- 【C语言入门】四人火柴游戏
- 关于被锁机软件修改硬盘引导扇区锁机软件读取密码的方法
- HTML5中如何实现rpx布局
- Mac 打造高效工作流
- 流氓软件自动安装恶意插件导致浏览器闪退问题
- RAP2-DELOS 开源社区版本 (后端 API 服务器)
- Vue3通过axios来读取本地json文件
- 一文读懂机器学习,大数据/自然语言处理/算法全有了…… (非常好)
- 独立个人博客有什么用?建独立博客有何意义?
- 语音情感识别--语音(声音的预处理)
- 软件测试工作经验总结
- python计算协方差矩阵_协方差矩阵、相关系数矩阵的EXCEL和python实现