收藏
回答

如何判断请求是来自小程序呢

请问一下,后台如何判断请求是来自小程序呢?

回答关注问题邀请回答
收藏

10 个回答

  • 2018-08-07

    不可能做到真正的反爬虫的,像前面的人说的一样,抓个包,你长什么样,我就能伪装成什么样。所有的反爬虫技术,只能提高一些爬虫的门槛,让爬虫成本变高。比较好的就是加密,但是要在前端解密,最近大家也看到我们的代码是怎么被反编译的,有了代码,你在前端怎么解密也是都知道的。一切反爬虫,只是提高了爬虫门槛。

    2018-08-07
    有用 1
    回复
  • 白开水
    白开水
    2018-08-05

    在请求 url 的 querystring 里加参数

    2018-08-05
    有用 1
    回复 1
    • f2
      f2
      2018-08-05

      好的,谢谢。

      2018-08-05
      回复
  • 好人
    好人
    2023-09-22

    小程序调用wx.login,拿code到后端去验证,能换到openid的就认可

    2023-09-22
    有用
    回复
  • 2018-08-07

    header里的这个属性是不可更改的,可以用这个判断,豆瓣就是这样封掉了小程序发来的请求,害我还要设置代理转发

    2018-08-07
    有用
    回复
  • 2018-08-07

    可以在header中,加一个自定义的header:

    wx.request({
       url: `${globalData.host}${url}`,
       header: {
         isWeixin: 'true'

      }

    )



    2018-08-07
    有用
    回复
  • 阿巴阿巴
    阿巴阿巴
    2018-08-07

    真心希望官方提供一个接口,这个方法太挫败了。就算入口的链接加一个,其他地方都好加吗?会导致原有系统很乱

    2018-08-07
    有用
    回复
  • Chef-Lunixy
    Chef-Lunixy
    2018-08-07

    反爬虫用这方法有毛用  抓个包什么都看到了 。。。

    2018-08-07
    有用
    回复 5
    • f2
      f2
      2018-08-07

      谢谢,求助小程序如何反爬虫的思路

      2018-08-07
      回复
    • 前端工坊
      前端工坊
      2018-08-07

      确实,在手机上开代理,用抓包工具,就可以看到,反爬,个人觉得还是有点麻烦的

      2018-08-07
      回复
    • Chef-Lunixy
      Chef-Lunixy
      2018-08-07回复f2

      只要是暴露在公网的请求就没办法规避的,可以把参数和时间戳一起加密,后端根据时间戳判断接口的时效性,再者就是限制 IP 的访问频率 或者用户 ID 的访问频率等

      2018-08-07
      回复
    • 金天
      金天
      2018-08-07回复Chef-Lunixy

      关键是小程序源码谁能看到,加密有什么用?

      2018-08-07
      回复
    • Chef-Lunixy
      Chef-Lunixy
      2018-08-07回复金天

      我没有专门针对小程序说,我只是说一般反爬虫的做法,OK?

      2018-08-07
      回复
  • 前端工坊
    前端工坊
    2018-08-07

    request header里面设置一个自定义字段更佳

    2018-08-07
    有用
    回复 4
    • f2
      f2
      2018-08-07

      谢谢你,下午我研究下。

      2018-08-07
      回复
    • 前端工坊
      前端工坊
      2018-08-07

      不用研究,我直接告诉你,wx.request里面有个header可以设置一个对象,{'from-wxapp': '特殊标识值'},后端可以获取到这个header里面from-wxapp字段的值,根据这个值,后端就可以知道是从小程序来的

      2018-08-07
      1
      回复
    • 阿巴阿巴
      阿巴阿巴
      2018-08-07回复前端工坊

      n你试过了吗?可以吗?我也有这个需求

      2018-08-07
      回复
    • 金天
      金天
      2018-08-07回复前端工坊

      人家只需要抓包就可以看到这个了吧,然后爬虫也可以设置header啊

      2018-08-07
      回复
  • 火红的萨日朗
    火红的萨日朗
    2018-08-06

    网络请求的 referer header 不可设置。其格式固定为 https://servicewechat.com/{appid}/{version}/page-frame.html,其中 {appid} 为小程序的 appid,{version} 为小程序的版本号,版本号为 0 表示为开发版、体验版以及审核版本,版本号为 devtools 表示为开发者工具,其余为正式版本。


    2018-08-06
    有用
    回复 3
    • f2
      f2
      2018-08-06

      谢谢,我研究下

      2018-08-06
      回复
    • 金天
      金天
      2018-08-08

      你说的这个都知道的,可是爬虫是可以模拟referer的

      2018-08-08
      回复
    • 金天
      金天
      2018-08-08

      爬虫只要抓包了,你的整个小程序对方都可以复制的。只能说想办法增加爬虫爬你全部内容的难度。

      2018-08-08
      回复
  • 疯狂的小辣椒
    疯狂的小辣椒
    2018-08-04

    你好,是指插件被多个小程序使用的时候,请求来自哪个小程序?

    2018-08-04
    有用
    回复 3
    • f2
      f2
      2018-08-04

      你好,不是的,

      比如后台python判断是小程序request的请求,就返回json。

      如果被抓包后,用pc端请求的话,返回空。

      2018-08-04
      回复
    • 阿巴阿巴
      阿巴阿巴
      2018-08-07回复f2

      这种方法很挫的。米有其他方法吗

      2018-08-07
      回复
    • 阿白
      阿白
      2018-08-07回复f2

      直接定义一个渲染器就可以了。如:xx.json xxx.wxapp就渲染不同的格式就可以了。

      2018-08-07
      回复
登录 后发表内容