都知道小程序上线接口需要域名,还需要https,就算是体验版的都是需要的,这样就筛选掉一大批开发者,像我这样只有学生轻量级服务器的学生要开发自己的小程序就很为难,但今天确惊奇的在小程序社区里面找到了用ip写接口的方法。

这就是用云函数,官方文档上面写的云函数是只提供了一套对自己数据库的增删改查。提供这套功能的框架是wx-server-sdk,由于云开发的环境运行在node.js中,我们开发者工具这边也要安装node.js,幸好我以前研究云函数的时候在自己电脑预安装了node.js,所以这边可以直接运行,话不多说,放码过来。

用PHP随便写个接口,返回点东西,放到自己的服务器中。

<?php
$id = '我是id';
$name = '我是name';
$ret=array('id'=>$id,'name'=>$name);
echo urldecode(json_encode($ret, JSON_UNESCAPED_UNICODE));
?>

然后新建一个云函数,具体怎么建可以参考官方文档

然后在该云函数的目录中安装request-promise依赖,在你电脑中找到你的云函数目录地址,按住shift,右键空白处,在此处打开cmd,然后输入npm install  request-promise回车。

接着在你新建的云函数中的index.js中插入以下代码

//request-promise是刚刚你在云函数的目录下安装的依赖
const rq = require('request-promise')
exports.main = async(event, context) => {
var res = await rq(
{
method: 'post',
uri: 'http://你的ip/aa.php',
body: {
xxx: '',
}, //参数
headers: {}, //请求头
json: true //是否json数据
}
).then((body) => {
return body
}).catch(err => {
return err;
})
return res;
}

这样就好了,现在去请求看看。

 onLoad: function () {
// 初始化
wx.cloud.init()
wx.cloud.callFunction({
name: 'proxy',
}).then(res => {
console.log(res)
})
},

返回:

    

正常返回,以后ip也可以写接口了,只不过云服务还是有很多确点的,返回慢,次数限制等。但对于学习而言足够了。

小程序接口越过域名和https限制方法的更多相关文章

  1. 微信小程序接口开发中解决https外网调试问题

    准备工作 1.有一台阿里云的Linux CentOS6 服务器,安装支持ssl模块的Nginx 2.有自己的域名,把域名解析到指向该服务器IP,本例中将wx.wangjiang.net 解析到服务器I ...

  2. 使用免费 mongodb数据库 + 免费node.js服务器搭建小程序接口

    由于微信的小程序只支持不带端口的域名接口,不支持IP地址和接口,所以我们需要映射到80端口并绑定备案过的域名才能被微信小程序访问到.简单点就是接口需要 https 协议才行,找了许久的免费的数据库与n ...

  3. Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解

    Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解 说明:Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解,加密算法,是现在每个软件项目里必须用到的内容. 广泛应用在包括 ...

  4. 小程序云函数调用http或https请求外部数据

    参考网址 https://blog.csdn.net/qiushi_1990/article/details/101220920 小程序云函数调用http或https请求外部数据 原创编程小石头 发布 ...

  5. 微信小程序中显示html富文本的方法

    微信小程序中显示html富文本的方法 使用方法:git地址:https://github.com/icindy/wxParse 一.下载wxParse文件 二.在要引入的页面的js文件中,引入文件 j ...

  6. 小程序--->小程序图片上传阿里OSS使用方法

    小程序图片上传阿里OSS使用方法 首先看下参考文档 ( http://blog.csdn.net/qq_38125123/article/details/73870667) 这里只将一些运用过程中遇到 ...

  7. 微信小程序配置合法域名和业务域名

    在微信小程序的开发过程中,当需要请求第三方网站数据时,都是直接调用wx.request接口的: xxxx:function(){ wx.request({ url: 'xxxxxxxxxx', dat ...

  8. 微信小程序开发之http到https的转化

    小程序从公布到现在已经过去好几个月了,本来从小程序发布出来就准备抱着微信的大腿进行一波小程序开发的,但是由于公司项目小程序暂时不支持,也就只能一直搁浅.过年过来偶然和朋友谈起小程序,觉的工作再忙也得找 ...

  9. windowns 2008(apache2.2.25 x86 openssl0.98y) 升级openssl1.0.1e(为了支持小程序接口TLS1.2)

    原来只知道微信小程序,服务器接口必须支持 https, 所以在搭建环境的时候没有注意, 只是在原来已有的系统框架上,稳健升级,把apache2.2.25 X86_no_openssl升级为了apach ...

随机推荐

  1. qemu常见选项解析

    1 -hda file -hdb file.-hdc file.-hdd file 把文件当成hard disk 0.hard disk 1.hard disk 2和hard disk 3. 2 -a ...

  2. make常见报错原因分析

    1 No rule to make target ‘xxx’ 原因一般是'xxx'文件不存在,首先应该去相应的目录检查文件是否存在.

  3. Keys.BACKSPACE Keys.SPACE

    browser.find_element_by_xpath(xp_newpage).send_keys(Keys.SPACE)browser.find_element_by_xpath(xp_newp ...

  4. where 1=1影响效率以及having和where的区别

    低效的“WHERE 1=1” 网上有不少人提出过类似的问题:“看到有人写了WHERE 1=1这样的SQL,到底是什么意 思?”. 其实使用这种用法的开发人员一般都是在使用动态组装的SQL. 让我们想像 ...

  5. js中setInterval() 和 setTimeout()

    setInterval() 方法 定义和用法 setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式. setInterval() 方法会不停地调用函数,直到 clearI ...

  6. JVM系列-类加载机制

    简介 在java中,类的声明周期总共分为以下几种: 加载(Loading),验证(Verification),准备(Preparation),解析(Analysis), 初始化(Initializat ...

  7. E20170531-hm

    passage  n.     通路; 通道 discrete   adj. 分离的,不相关联的; 分立式; 非连续; alternative   替代的; 另类的; 备选的; 其他的; intent ...

  8. spring cloud config搭建说明例子(一)-简单示例

    服务端 ConfigServer pom.xml添加config jar <dependency> <groupId>org.springframework.cloud< ...

  9. WMI 技术

    什么是WMI? Windows Management Instrumentation (WMI)是可伸缩的系统管理结构,该规范采用一个统一.基于标准且可扩展的面向对象接口.它提供与系统管理员信息和基础 ...

  10. HTML基础2——综合案例3——创建考试报名表格

    <html> <head> <title></title> </head> <body> <table width=&qu ...