微信小程序中wx.request所调用域名是有严格规定的,不是随便用个url就行的,下面是官方文档的说明:
每个微信小程序需要事先设置一个通讯域名,小程序只可以跟指定的域名与进行网络通信。包括普通 HTTPS 请求(request)、上传文件(uploadFile)、下载文件(downloadFile) 和 WebSocket 通信(connectSocket)
配置流程
服务器域名请在 「小程序后台-设置-开发设置行判陵-服务器域名」 中进行配置,配置时需要注意:
域名只支持 https (request、uploadFile、档戚downloadFile) 和 wss (connectSocket) 协议;
域名不能使用 IP 地址或 localhost;
域名必须经过 ICP 备案;
出于安全考虑,api.weixin.qq.com 不能被配置为服务器域名,相关API也不能在小程序内调用。 开发者应将 appsecret 保存到后台服冲知务器中,通过服务器使用 appsecret 获取 accesstoken,并调用相关 API;
对于每个接口,分别可以配置最多 20 个域名。
1、支持的前端开发语言有:前端主要是用WXML、WXSS以及JavaScript来开发。本质上就是JS+CSS+HTML5,不过不能直接用HTML标签,微信提供一个组件库,没有DOM和其他浏览器上的API;网络、Canvas等也重新包装过握御。【点击查看小程序开发底价】
2、支持的后端开发语言有:
其实理论上后端用什么语言都可以,只要能够从服务器上获取到数据,例如:PHP、Java或者Python来开发。一般对于企业而言,都是段陆岩采用php程序开发微信小程序;技术要求高一点的可以采用java程序开发。
想要了解更多有关小程序开悉祥发的相关信息,推荐咨询猪八戒网。猪八戒网成立于2006年,是中国领先的企业服务平台,服务交易独角兽企业。猪八戒网现有注册用户2800万、在全国布局线下数字化创业园区超过100个。十余年来,累计有10万余个人通过平台孵化成长为公司,超过100万人通过平台实现灵活就业,千万企业通过平台解决专业服务需求;专业性值得选择。
PAY页面往 js_api_call.php 传值 获取不到的问题echo 是可以echo出来的 但是
这里不写死就会报错 $key0$
<?php
/**
* JS_API支付demo
* ====================================================
* 在微信浏览器里面打开H5网页中执行JS调起支付。接口输入输出数据格式为JSON。
* 成功调起支付需要三个步骤:
* 步骤1:网页授权获取用户openid
* 步骤2:使用统一支付接口,获取prepay_id
* 步骤3:使用jsapi调起支付
*/
//获取信息
@$name="支付测试-包包"
@$price=0.01*100
@$hyid=$_GET['hyid']
@$out_trade_no=$_GET['num']//订单号
include_once("../WxPayPubHelper/WxPayPubHelper.php")
//使用jsapi接口
$jsApi = new JsApi_pub()
//=========步骤1:网页授权获取用户openid============
陪猛 //通过code获得openid
if (!isset($_GET['code']))
{
//触发微信返回code码
$url = $jsApi->createOauthUrlForCode(WxPayConf_pub::JS_API_CALL_URL)
Header("Location: $url")
}else
{
//获取code码,以获取openid
$code = $_GET['code']
纤纤$jsApi->setCode($code)
$openid = $jsApi->getOpenId()
}
//=========步骤2:使用统一支付接口,获取prepay_id============
//使用统一支付接口
$unifiedOrder = new UnifiedOrder_pub()
//设置统一支付接口参数
//设置必填参数
//appid已填,商户无需重复填写
//mch_id已填,商户无需重复填写
//noncestr已填,商户无需重复填写
//spbill_create_ip已填,商户无需重复填写
//sign已填,商户无需重复填写
$unifiedOrder->setParameter("openid","$openid")//商品描述
$unifiedOrder->setParameter("body","$name")//商品描述
//自定义订单号,此处仅作举例
$timeStamp = time()
$out_trade_no = WxPayConf_pub::APPID."$timeStamp"
$unifiedOrder->setParameter("out_trade_no","$out_trade_no")//商户订单号
$unifiedOrder->setParameter("total_fee","$price")//总金额
$unifiedOrder->setParameter("notify_url","http://youjia.pinpai365.cn/weixinpay/demo/notify_url.php")//通知地址
$unifiedOrder->setParameter("trade_type","JSAPI")//交易类型
//非必填参数,商户可根据实际情况选填
//$unifiedOrder->setParameter("sub_mch_id","XXXX")//子商户号
//$unifiedOrder->setParameter("device_info","XXXX")//设备号
//$unifiedOrder->setParameter("attach","XXXX")//附加毁乱仿数据
//$unifiedOrder->setParameter("time_start","XXXX")//交易起始时间
//$unifiedOrder->setParameter("time_expire","XXXX")//交易结束时间
//$unifiedOrder->setParameter("goods_tag","XXXX")//商品标记
$unifiedOrder->setParameter("attach","2")//会员ID
$prepay_id = $unifiedOrder->getPrepayId()
//=========步骤3:使用jsapi调起支付============
$jsApi->setPrepayId($prepay_id)
$jsApiParameters = $jsApi->getParameters()
//echo $jsApiParameters
?>
<html>
<head>
<meta charset="utf-8">
<title>支付页面</title>
<script type="text/javascript">
//调用微信JS api 支付
function jsApiCall()
{
WeixinJSBridge.invoke(
'getBrandWCPayRequest',
<?php echo $jsApiParameters?>,
function(res){
WeixinJSBridge.log(res.err_msg)
if(res.err_msg == "get_brand_wcpay_requestk"){
window.location.href='/shop/successful.php?spmc=<?php echo $name?>&&price=<?php echo $price?>'
//history.go(-1)
}else{
window.location.href='/shop/pay.php'
}
}
)
}
if (typeof WeixinJSBridge == "undefined"){
if( document.addEventListener ){
document.addEventListener('WeixinJSBridgeReady', jsApiCall, false)
}else if (document.attachEvent){
document.attachEvent('WeixinJSBridgeReady', jsApiCall)
document.attachEvent('onWeixinJSBridgeReady', jsApiCall)
}
}else{
jsApiCall()
}
</script>
</head>
</html>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)