收藏
回答

微信小程序不支持Blob对象吗?

这个是我在开发者工具上面生成的小程序码。因为官方api给我返回的是二进制流的数据,我就用blob解码了一下,但是在真机上面,log打印Blob is not defined.


我现在想问,如何解决真机不支持Blob对象的问题了,以及是否有替代方案

最后一次编辑于  2018-07-27
回答关注问题邀请回答
收藏

7 个回答

  • 社区技术运营专员-小柿子
    社区技术运营专员-小柿子
    2018-07-27

    你好,暂时不支持Blob对象


    2018-07-27
    赞同
    回复 1
    • 那我懂你意思了
      那我懂你意思了
      2018-07-27

      那要如何解决这个二进制流图片的问题呢。

      前端有别的解决方案吗

      2018-07-27
      回复
  • 是什么颜色
    是什么颜色
    2018-10-18

    希望支持下 Blob 对象

    2018-10-18
    赞同 1
    回复
  • Afan
    Afan
    2018-07-31

    你让后台创建本地文件二维码,返回本地文件资源路径阿.

    2018-07-31
    赞同
    回复
  • @xlx
    @xlx
    2018-07-30

    换个后台吧

    2018-07-30
    赞同
    回复 2
    • 那我懂你意思了
      那我懂你意思了
      2018-07-30

      目前问题已经解决😁

      2018-07-30
      回复
    • 赵岩山
      赵岩山
      2018-11-06

      你好,这个问题如何解决啊???

      2018-11-06
      回复
  • 畅
    2018-07-29

    后台处理吧。后台处理不了就换个后台。

    2018-07-29
    赞同
    回复
  • spring
    spring
    2018-07-27

    请求官方接口的放在自己的后台,你请求自己的后台,后台先把二进制流处理成base64就行了

    2018-07-27
    赞同
    回复 6
    • 那我懂你意思了
      那我懂你意思了
      2018-07-27

      就是因为后台做不了这个功能,才放在前端来处理。

      后台是用的Node.js来搭建的,他拿不到api返回的数据。

      2018-07-27
      回复
    • spring
      spring
      2018-07-27回复那我懂你意思了

      我也用node写过 可以拿到 问问是什么原因吧

      2018-07-27
      回复
    • 那我懂你意思了
      那我懂你意思了
      2018-07-27回复spring

      后台的意思是,他现在搭的框架,返回的是promise对象,但是api返回的不是res这种格式,直接报错了。

      2018-07-27
      回复
    • spring
      spring
      2018-07-27

      这和promise没半毛钱关系,你们后台问题很大!副一段我用egg写的后台好了,这里确实频繁调access_token不太合理,当时为了测试用的

      'use strict';
       
      const Controller = require('egg').Controller;
       
      class wechatAPI extends Controller {
          async accessToken() {
              let appid = 'xxx';
              let secret = 'xxx';
              let url = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='+appid+'&secret='+secret;
              const ctx = this.ctx;
              const result = await ctx.curl(url,{
                  dataType: 'json'
              });
              console.log(result.data);
              return result.data.access_token;
          }
       
          async qrcode(scene,access_token){
              let url = 'https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token='+access_token;
              const data = {
                  'scene':scene,
                  'page':'xxx'
              };
              const ctx = this.ctx;
              const result = await ctx.curl(url,{
                  method: 'POST',
                  contentType: 'json',
                  data: data
              });
              return result.data.toString('base64');
          }
       
          async getQRcode(){
              let token = await this.accessToken();
              const ctx = this.ctx;
              let scene =  this.ctx.request.query.scene;
              ctx.body = await this.qrcode(scene,token);
          }
      }
       
      module.exports = wechatAPI;


      2018-07-27
      回复
    • 那我懂你意思了
      那我懂你意思了
      2018-07-27回复spring

      好的,我再跟我们后台沟通一下,看下具体原因。

      真的多谢你了朋友   ( •̀ ω •́ )✧

      2018-07-27
      回复
    查看更多(1)
  • 那我懂你意思了
    那我懂你意思了
    2018-07-27

    有没有大佬提供下解决方案呀.....卡在这个问题一天了

    2018-07-27
    赞同
    回复
登录 后发表内容