文档章节

Nginx反向代理豆瓣API接口为小程序提供数据

开源中国最牛的人
 开源中国最牛的人
发布于 2018/12/07 10:53
字数 401
阅读 865
收藏 1

因为近来豆瓣的开发者平台已经无限期的下线,而且由于很多小程序直接请求豆瓣的接口,导致了豆瓣做了防盗链的,小程序完全不能打开。

但是服务器端用curl发现是可以访问,那么我们不如自己做一个反向代理,为我们自己的小程序提供一个中转站。下面不BB了,直接贴代码

Nginx端:【因为小程序必须要用https协议,建议小伙伴自己申请一个免费的,华为云,阿里云,腾讯云都提供】

server {
        listen       443;
        server_name  www.example.com;
        ssl on;
        index index.html index.htm index.php;
        ssl_certificate   /aliyun/server/nginx/cert/example.com/www/server.crt;
        ssl_certificate_key  /aliyun/server/nginx/cert/example.com/www/server.key;
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;

          location / {
                proxy_store off;
				proxy_redirect off;
				proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
				proxy_set_header X-Real-IP $remote_addr;
				proxy_set_header Referer 'no-referrer-when-downgrade';
				proxy_set_header User-Agent 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36';
				proxy_connect_timeout 600;
				proxy_read_timeout 600;
				proxy_send_timeout 600;
                proxy_pass  https://api.douban.com;
          }
}

小程序前端的坑:【 'content-type': 'application/json'  已经不支持了,建议换成 'Content-Type': 'json' 不然会报400的错误】

    wx.request({
      url: 'https://www.example.com/v2/movie/top250?start=0&count=2',
      data: {},
      method: 'get',
      header: {
        // 'content-type': 'application/json'
        'Content-Type': 'json'
      },
      success: function (res) {
        console.log(res.data)
      }
    })

 

© 著作权归作者所有

开源中国最牛的人
粉丝 2
博文 96
码字总数 27207
作品 0
西安
高级程序员
私信 提问
加载中

评论(0)

跨域问题的解决办法

跨域 什么是跨域 跨域是由浏览器的同源策源产生的,是指页面请求的接口地址,必须与页面的url地址处于同域上(即域名、端口、协议相同)。这是为了防止某域名下面的接口,被其他域名下的网页...

BrightLD的博客
2017/12/11
0
0
Nginx惊现漏洞 百万网站面临“拖库”风险

据瑞星互联网攻防实验室近日出具的一份报告显示,国际知名的服务器Nginx存在缓冲区溢出漏洞,目前利用该漏洞进行网络攻击的恶意程序已经在互联网上出现。届时,使用Nginx服务器的互联网平台将...

yh--18122221111
2018/12/17
0
0
小程序请求豆瓣API报403解决方法

昨天改了下小程序的后台,重启服务之后,发现豆瓣API返回403,应该是豆瓣对小程序的请求做了限制,不知道为啥要这样做,简直有毒。 解决方法 nginx做代理,并改变请求的Referer和User-Agent头...

softbone
2018/01/19
0
0
nginx反向代理跨域基本配置与常见误区

最近公司前后端分离,前端独立提供页面和静态服务很自然的就想到了用nginx去做静态服务器。同时由于跨域了,就想利用nginx的反向代理去处理一下跨域,但是在解决问题的同时,发现网上有些方案...

小七奇奇
2018/08/29
0
0
nginx反向代理解决跨域问题

nginx的作用 1.代理 2.web静态服务器 代理(proxy) 允许一个网络终端(一般为客户端),通过这个服务于另一个网络终端(一般为服务器)进行非直接的连接;提供代理服务的电脑系统或其他类型的网络终...

funnycoderstar
2018/05/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

仁怀哪里可以开餐饮费发票-中国新闻网

仁怀哪里可以开餐饮费发票【139 * 7⒏ б2 * 15 З9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridg...

17054723687
58分钟前
44
0
资兴哪里可以开餐饮费发票-中国新闻网

资兴哪里可以开餐饮费发票【139 * 7⒏ б2 * 15 З9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridg...

17054723480
今天
36
0
沅江哪里可以开餐饮费发票-中国新闻网

沅江哪里可以开餐饮费发票【139 * 7⒏ б2 * 15 З9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridg...

17054723685
今天
36
0
天津哪里可以开餐饮费发票-中国新闻网

天津哪里可以开餐饮费发票【139 * 7⒏ б2 * 15 З9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridg...

17054723617
今天
33
0
汨罗哪里可以开餐饮费发票-中国新闻网

汨罗哪里可以开餐饮费发票【139 * 7⒏ б2 * 15 З9】陈生,诚、信、合、作,保、真、售、后、保、障、长、期、有、效。adb的全称为Android Debug Bridg...

17060820048
今天
38
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部