遇到问题小记(1)

103 阅读1分钟

随机生成唯一 IMEI

data(){
  return {
    // 生成唯一IMEI
    codes: {
      Apple: {
        unknown: "01124500",
        iPhone: "01154600",
        iPhone3G: {
          MB496RS: "01174400",
          MB704LL: "01180800",
          MB496B: "01181200",
          A1241: "01193400"
        }
      },
      Samsung: {
        SMT5613474: "35951406",
        GalaxyS3: "35226005"
      },
      HTC: {
        WildFire: "35902803"
      },
      Nokia: {
        N9: "35166905",
        N9_2: "35792304",
        N9_3: "35929404",
        N1320: "35173506",
        N1320_2: "35173606"
      }
    }
  }
},
  created(){
    // 获取唯一IMEI码
    this.imeiCode = this.GetRandom()
  },
    methods:{
      // 生成唯一随机IMEI
      
      SN() {
        return (Math.floor(Math.random() * (999999 - 100000)) + 100000).toString();
      },
        upTo(digit) {
          while (Number.isInteger(digit / 10) == false) digit++;
          return digit;
        },
          
          Luhn(line) {
            var summEven = 0;
            var even = [];
            var summOdd = 0;
            for (var i = 1; i < line.length; i = i + 2) {
              even.push(Number(line[i]) * 2);
              summOdd = summOdd + Number(line[i - 1]);
              if (i == 13) {
                break;
              }
            }
            for (var y = 0; y < even.length; y++) {
              
              if (Number(even[y]) / 10 < 1) {
                summEven = summEven + Number(even[y]);
              } else {
                var st = Number(even[y].toString().charAt(0));
                var nd = Number(even[y].toString().charAt(1))
                summEven = summEven + st + nd;
              }
              
              
              
            }
            var Luhndigit = summEven + summOdd;
            Luhndigit = this.upTo(Luhndigit) - Luhndigit;
            return Luhndigit;
          },
            GetRandom() {
              var randImei;
              var objLength = Object.keys(this.codes).length;
              var keys = Object.keys(this.codes)
              var randDevice = this.codes[keys[keys.length * Math.random() << 0]];
              var SNs = Object.keys(randDevice);
              var randCode = randDevice[SNs[SNs.length * Math.random() << 0]];
              if (typeof randCode != "object") {
                randImei = randCode + this.SN();
                randImei = randImei + this.Luhn(randImei).toString();
                return randImei;
              } else {
                var deeper = Object.keys(randCode);
                randCode = randCode[deeper[deeper.length * Math.random() << 0]];
                randImei = randCode + this.SN();
                randImei = randImei + this.Luhn(randImei).toString();
                return randImei;
              }
              
            },
}

删除对象的属性

delete obj.key

返回 true,已声明的变量 windows 下的变量可以删除, 未声明的变量不可删除。

uniapp H5获取 IP 地址

获取方法:blog.csdn.net/weixin_4273…

遇到的问题

  • 线上环境安卓可以获取,IOS 和 浏览器 获取不到。

  • 测试环境 安卓、IOS、浏览器都可以获取到。

找到问题/报错

  • Mixed Content: The page at 'hftsh.hkrt.cn/merchant/in… was loaded over HTTPS, but requested an insecure script 'pv.sohu.com/cityjson?ie… This request has been blocked; the content must be served over HTTPS.

  • 在一个网页中同时使用了HTTP和HTTPS,而最初的请求方式为 HTTPS。现代浏览器可能会阻止此类内容,或者显示关于此类内容的警告,提醒用户此页面包含不安全的内容。阻止混合内容的浏览器可能会首先尝试将该内容的连接从HTTP “升级”到HTTPS。

解决方案

正式打包之后的 index.html 文件配置的引入文件前缀改为了 https。

blog.csdn.net/qq_42190001…