微信小程序访问豆瓣api403问题解决方发法
微信小程序访问豆瓣api403问题解决方法一览;通过豆瓣api可以获取很多电影、书籍等的数据信息。昨晚上用微信小程序请求豆瓣api,竟然被豆瓣拒绝了。(豆瓣设置了小程序的访问权限);下面就跟着小编一起来看看最新的解决方法吧!
问题:
小程序请求是这样子:

错误这样子

解决:
1、使用Nginx
首先下载Nginx
解压
打开解压文件nginx-1.13.12(这是你的解压文件名)/conf/nginx.conf
在文件中找到server {},在server {}下添加

重点是更改 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';
以此来代替小程序去请求豆瓣,然后把数据返回给小程序。
更改配置后保存,在nginx.exe 文件夹下打开命令窗口,输入start nginx,启动后每次修改配置,可以使用nginx -s reload
start nginx : 启动nginx
nginx -s reload :修改配置后重新加载生效
nginx -s reopen :重新打开日志文件
nginx -t -c /ath/to/nginx.conf 测试nginx配置文件是否正确
关闭nginx:
nginx -s stop :快速停止nginx
nginx -s quit :完整有序的停止nginx
注意,我是在windows下进行开发和配置
如何使用:只需把请求的url的协议和域名替换成http://localhost/v2/,例如https://api.douban.com/v2/book/1220562 =》http://localhost/v2/book/1220562
测试:

竟然还是错误!!!

状态码4xx客户端错误,400Bad Request 意思是我们发送了一个错误的请求。经过尝试发现,把header请求改成 header: { 'content-type': 'application/xml' }就可以了。额。。。明明获取的数据就是json,。。。可能是小程序后台对header做了限制。
终于等到你(正确测试)


以上就是关于小程序请求豆瓣api报403解决方法的全部内容
第二种:
通过豆瓣API可以获取很多电影、书籍的数据信息,今天在调用豆瓣正在上映电影接口的时候报403错误,原因是豆瓣设置了小程序的访问权限。如下:

解决方法是使用代理,将豆瓣API地址换成 https://douban.uieee.com,但是,悲催的是又报了400(bad request)错误,如下:

接下来,设置请求头,header默认为: "ontent-type": "application/json"; 但是仍然会报400错误,将请求头中json设置改为xml,请求成功,如下:

微信小程序访问豆瓣api403问题解决方发法的更多相关文章
- 微信小程序访问豆瓣电影api400错误解决方法
最近在跟着demo学习微信小程序,却卡在了第一步请求豆瓣电影api上,折腾了很久,代码如下: wx.request({ url : "https://api.douban.com/v2/mo ...
- 微信小程序访问豆瓣api报403错误解决方法
通过豆瓣API可以获取很多电影.书籍的数据信息,今天在调用豆瓣正在上映电影接口的时候报403错误,原因是豆瓣设置了小程序的访问权限.如下: 解决方法是使用代理,将豆瓣API地址换成 https://d ...
- 微信小程序访问webservice(wsdl)+ axis2发布服务端(Java)
0.主要思路:使用axis2发布webservice服务端,微信小程序作为客户端访问.步骤如下: 1.服务端: 首先微信小程序仅支持访问https的url,且必须是已备案域名.因此前期的服务器端工作需 ...
- 微信小程序demo豆瓣图书
最近微信小程序被炒得很火热,本人也抱着试一试的态度下载了微信web开发者工具,开发工具比较简洁,功能相对比较少,个性化设置也没有.了解完开发工具之后,顺便看了一下小程序的官方开发文档,大概了解了小程序 ...
- 【Azure API 管理】从微信小程序访问APIM出现200的空响应的问题中发现CORS的属性[terminate-unmatched-request]功能
问题描述 使用微信小程序调用APIM(API Management)中的接口,发现POST和PUT请求被拦截,返回的状态码为200,但是无消息内容. 在小程序中的调用JS代码如: 通过浏览器测试得到的 ...
- 微信小程序调接口常见问题解决方法
第一次调接口时遇见的bug. 注意:接口的域名不能使用 IP 地址或 localhost,且不能带端口号: 微信小程序如何调接口? wx.request({ url: 'http://miniapp/ ...
- 微信小程序 —— 仿制豆瓣(一)
先预览一下效果 欢迎扫码查看 码云地址:https://gitee.com/mk_23/little_chen_xu.git 预览完成,首先进入app.json文件中配置参数,主要就是配置我们要用的页 ...
- 微信小程序之豆瓣电影
此文是学习小程序第二天做出的一个小demo,调用了豆瓣电影的api,但是需要填上自己appId,现在项目的 目录如下图: 效果图如下: 在这个demo里面,我更改了小程序的navigationBar, ...
- 如何用微信小程序模仿豆瓣首页
程序思路: 用微信自带组件swiper来实现轮播图 用豆瓣提供的api(这里使用的电影api)来获取最近的电影数据[豆瓣api地址] 获取数据用微信的request方法,只需要提供豆瓣api的url链 ...
随机推荐
- tensorflow机器学习模型的跨平台上线
在用PMML实现机器学习模型的跨平台上线中,我们讨论了使用PMML文件来实现跨平台模型上线的方法,这个方法当然也适用于tensorflow生成的模型,但是由于tensorflow模型往往较大,使用无法 ...
- 互联网视频直播技术(广电总局、优酷土豆、XX直播)
互联网直播是目前最火的技术之一,涵盖了很多方面的知识(网络,CDN,GPU,算法,图像处理),以下我介绍互联网直播的大体框架和关键技术点: 一.前端视频流协议 前端流主要包括UDP.RTMP.RTSP ...
- 大众美团服务链监控CAT
github链接:https://github.com/dianping/cat CAT 作为服务端项目基础组件,提供了 Java, C/C++, Node.js, Python, Go 等多语言客户 ...
- JavaWeb中使用JSON
前言: 最近也是期末了,有好多好多文档和实验报告要交,所以都没啥时间写文,这段时间清闲了,来补一下之前学习时遗漏的一些知识树,话说就没人吐槽这个JSON图标好丑吗? 什么是JSON JSON 指的是 ...
- Linux基础命令第二天
1,修改命令提示符 修改Linux命令行显示,需要用到PS1变量,PS1是Linux终端用户的一个环境变量.在终端输入命令:set,就会找到PS1变量,然后给PS1重新赋值,就会得到对应的样式. 默认 ...
- Django 系列博客(十三)
Django 系列博客(十三) 前言 本篇博客介绍 Django 中的常用字段和参数. ORM 字段 AutoField int 自增列,必须填入参数 primary_key=True.当 model ...
- [Css] css3的flex布局
flex思维导图 {"name":"flex","children":[{"name":"传统布局方式&quo ...
- C# 如何在Excel表格中插入、编辑和删除批注
概述 为文档添加必要的批注可以给文档使用者提供重要的提示信息,下面的示例中,将介绍通过C#编程语言来给Excel表格中的指定单元格内容添加批注,此外,对于已有的批注,如果需要修改,我们也可以进行编辑或 ...
- Android开发过程中的坑及解决方法收录(四)
1.某个控件要放在Linearlayout布局的底部(底部导航条) <LinearLayout xmlns:android="http://schemas.android.com/ap ...
- 设计模式之 SOA面向服务的体系
SOA英文直译是,面向服务的体系结构. SOA是一种设计方法,其中包含多个服务,而服务之间通过配合最终会提供一系列功能.一个服务通常以独立的形式存在于操作系统进程中. 想要看到更多玮哥的学习笔记.考试 ...