美文网首页
微信小程序请求豆瓣api踩坑

微信小程序请求豆瓣api踩坑

作者: Mr绍君 | 来源:发表于2018-05-15 09:37 被阅读205次

    微信小程序请求豆瓣api的时候,会报一个403(Forbidden)的错误,原因是小程序把豆瓣公开的api给禁掉了。所以我们需要使用代理。

    我在知乎上找了篇提供免房费代理的,我们只要把https://api.douban.com换成我们代理的地址,其他的不变。
    https://www.zhihu.com/question/265806694/answer/302894881

    设置好代理之后,可能还会遇到一个400 badrequest的错误,这是什么原因呢?

    我们先把请求头header设置好,默认为

      header: {
        'Content-Type': 'application/json'
    }
    

    但是设置好之后,依然会报400的错误。

    现在我们把 'Content-Type': 'application/json'改成 'Content-Type': 'application/xml',再请求一下,发现好了。

    感觉这个地方是个bug,其实不一定是xml,其他的也行,反正就是不能是json,比如直接把application/xml设置为空,或者直接设置为json都可以。


    如果一时找不到合适的代理,也可以自己写个服务器中转一下。

    var express = require("express");
    var app = express();
    var request = require('request');
    
    app.get("/*", (req, res, next)=> {
        request('https://api.douban.com' + req.url, function(error, response, body) {
            res.send(body);
        });
    })
    
    app.listen(3000);
    

    结果是一样的。

    相关文章

      网友评论

          本文标题:微信小程序请求豆瓣api踩坑

          本文链接:https://www.haomeiwen.com/subject/mfxedftx.html