`
keete
  • 浏览: 31329 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

uniapp解决芝麻信用预授权支付,不需要引用第三方原生SDK

 
阅读更多
最近flutter很火啊,原因不仅因为flutter的爸爸是谷歌、flutter跨多个平台甚至支持windows,更重要的是其性能接近于原生。
那么uniapp是不是压力山大呢?压力固然有,但自信也依旧在,毕竟vue开发者众多,uniapp已有较强的群众基础及一定的开发者生态。
言归正传。
uniapp有一个客户端支付API:uni.requestPayment 代码如


uni.requestPayment({
						      provider: 'alipay',
						      orderInfo: payOrderAliData.data.data.orderStr, 
						      success: (res)=> {
						         //console.log('success:' + JSON.stringify(res));
						         uni.showToast({
						         			title: "支付成功"
						         			})
						         setTimeout(()=>{
						         	this.$mRouter.push({
						         		 route:this.$mRoutesConfig.paysuccess
						         			} )
						         },2000)
						      },
						      fail:  (err)=> {
						          //console.log('fail:' + JSON.stringify(err));
						  							 this.$mRouter.push({
						  							 	 route:this.$mRoutesConfig.payfailure
						  							 } )
						      }
						  });


payOrderAliData.data.data.orderStr
是通过后台接口生成的,接口程序代码:
		AlipayClient alipayClient = new DefaultAlipayClient(
				alipayConfig.getGatewayUrl(), alipayConfig.getAppId(),
				alipayConfig.getPrivateKey(), alipayConfig.getFormat(),
				alipayConfig.getCharset(), alipayConfig.getPublicKey(),
				alipayConfig.getSignType());
		AlipayFundAuthOrderAppFreezeRequest request =  new  AlipayFundAuthOrderAppFreezeRequest();
		AlipayFundAuthOrderAppFreezeModel model =  new  AlipayFundAuthOrderAppFreezeModel();

		Random random = new Random();
		model.setOrderTitle( "支付宝预授权" );
		model.setOutOrderNo(orderId); //替换为实际订单号
		model.setOutRequestNo( "2020022443242"+random.nextInt(999999999) ); //替换为实际请求单号,保证每次请求都是唯一的
		model.setPayeeUserId("2088631531715552"); //payee_user_id,Payee_logon_id不能同时为空
		model.setPayeeLogonId( "" );
		model.setProductCode( "PRE_AUTH_ONLINE" ); //PRE_AUTH_ONLINE为固定值,不要替换
		model.setAmount( "0.01" );
		//需要支持信用授权,该字段必传
		model.setExtraParam( "{\"category\":\"TIME_SHARE_RENT_CAR\",\"outStoreCode\":\"charge001\",\"serviceId\":\"2020043000000000000029215500\",\"outStoreAlias\":\"chongdian\"}");  //outStoreAlias将在用户端信用守护、支付信息、账单详情页展示
		//选填字段,指定支付渠道
		model.setEnablePayChannels("[{\"payChannelType\":\"PCREDIT_PAY\"},{\"payChannelType\":\"MONEY_FUND\"},{\"payChannelType\":\"CREDITZHIMA\"}]");//余额宝(MONEY_FUND)、花呗(PCREDIT_PAY)以及芝麻信用(CREDITZHIMA)
		request.setBizModel(model);
		request.setNotifyUrl(alipayConfig.getNotifyUrl()); //异步通知地址,必填,该接口只通过该参数进行异步通知
		AlipayFundAuthOrderAppFreezeResponse response = alipayClient.sdkExecute(request); //注意这里是sdkExecute,可以获取签名参数
		if (response.isSuccess()){
			System.out.println( "调用成功" );
			logger.info( "response: {}" +response.getBody()); //签名后的参数,直接入参到
			resultMap.put("orderStr",response.getBody());
		}  else  {
			System.out.println( "调用失败" );
			resultMap.put("orderStr",response.getBody());
		}

		return resultMap;


需要注意:
model.setPayeeUserId,这里填写的是支付宝商户号而不是用户ID
TIME_SHARE_RENT_CAR 类目需要在芝麻信用商家中心申请成功之后方可使用
serviceId 这里是Id非id,官方资料可能是小写,这是一个坑。这个serviceId在哪里查看呢?
找到“芝麻信用商家中心”的“信用服务管理”里的“信用服务ID”即是。


分享到:
评论

相关推荐

    芝麻信用sdk移动端接入pdf文档

    在移动应用开发中,与第三方服务进行集成是常见的需求,而芝麻信用作为阿里巴巴集团下的一个专业信用评估平台,为开发者提供了SDK,使得在移动端实现用户信用查询、授权等功能变得简单易行。本篇将详细介绍如何接入...

    HTML5 Canvas 仿支付宝芝麻信用统计图表.rar

    HTML5 Canvas 仿支付宝芝麻信用统计图表特效,一个建立在HTML5基础上的统计图表,动态效果显示,看上去十分美观且显专业,在支付宝芝麻信用中就是采用的这种风格。这些图表效果除了使用HTML5 Canvas技术外,还使用了...

    仿支付宝芝麻信用分自定义view

    本项目“仿支付宝芝麻信用分自定义view”旨在模拟支付宝应用程序中的芝麻信用分展示视图,这涉及到对Android UI设计、自定义View的绘制以及动画效果的实现。 首先,自定义View的基础是理解Android的View类和...

    芝麻信用sdk-JAVA

    2. **信用查询**:通过SDK,开发者可以调用接口查询用户的芝麻信用分,这通常需要用户的授权。查询结果包括但不限于用户的信用分数、信用报告以及相关的信用评估信息。 3. **交易保障**:芝麻信用的SDK还支持交易...

    集成支付宝芝麻认证SDK

    集成蚂蚁金服芝麻认证SDK,通过人脸识别进行实人认证。集成支付宝芝麻认证SDK集成支付宝芝麻认证SDK集成支付宝芝麻认证SDK

    php对接支付宝芝麻免押demo

    在这个示例中,我们可能涉及到的API包括芝麻信用授权、免押金服务、支付、退款、查询免押余额以及解冻资金等功能。这些API通常需要开发者注册并获取应用ID(AppID)和私钥,以便进行身份验证和签名。 2. **Zmxy.php...

    Go-go-zmxy芝麻信用SDK

    芝麻信用,作为阿里巴巴集团下的一个专业信用评估平台,为开发者提供了丰富的API接口,使得第三方应用能够集成芝麻信用服务。本文将深入探讨Go语言环境下使用的"Go-go-zmxy"芝麻信用SDK,帮助开发者理解其核心功能、...

    芝麻信用接口demo及文档

    首先,芝麻信用接口是阿里巴巴旗下蚂蚁金服提供的一项服务,它通过收集、分析用户的消费行为、支付习惯等多维度数据,为用户生成一个信用评分,这个评分广泛应用于租赁、信贷、求职等多个场景。调用芝麻信用接口,...

    芝麻信用怎么用?支付宝钱包芝麻信用分怎么用?.docx

    随着社会信用体系建设的不断完善和个人数据安全保护意识的增强,芝麻信用等第三方信用评估机构将发挥更加重要的作用。未来,芝麻信用可能会进一步拓展应用场景,比如与更多公共服务领域合作,提供更多基于信用的便利...

    qq第三方登录sdk

    QQ第三方登录SDK的使用,不仅可以提升应用的用户基数,还可以借助QQ的社交网络提高应用的曝光度和活跃度。然而,需要注意的是,为了保护用户隐私,开发者在使用这些功能时必须遵守相关的法律法规,合理使用用户数据...

    php 接入授权芝麻信用分

    完整 php 接入芝麻信用分流程,私钥和公钥在芝麻信用后台设置,官网有详细说明

    芝麻信用文档

    3. **芝麻信用页面授权说明**:在对接芝麻信用服务时,通常需要用户授权,允许应用访问其信用信息。这个过程涉及到OAuth2.0授权框架,开发人员需要理解授权码流程、隐式授权流程等授权方式,并能正确引导用户完成...

    类似支付宝安卓9.0芝麻信用分效果

    芝麻信用分是阿里巴巴旗下蚂蚁金服推出的一种个人信用评估服务,它通过大数据分析技术,对用户的消费、支付、信贷等行为进行综合评估,形成一个反映用户信用状况的分数。在支付宝安卓9.0版本中,芝麻信用分的效果...

    仿芝麻信用分

    1. **数据收集与处理**:构建信用评分模型的第一步是收集大量的用户数据,这可能包括但不限于用户的消费记录、还款历史、社交网络行为、个人信息等。数据预处理是至关重要的,需要清洗、去重、填充缺失值,并进行...

    第三方支付竞品分析.zip

    在当前数字化经济时代,第三方支付已经成为了金融领域不可或缺的一部分,为消费者和商家提供便捷的交易服务。本竞品分析主要探讨了市场上主流的第三方支付平台,包括但不限于支付宝、微信支付、PayPal等,旨在理解各...

    芝麻信用接口demo

    3. **OAuth 2.0授权框架**:为了安全地获取用户的芝麻信用信息,开发者需要通过OAuth 2.0授权协议获取用户的授权。这个流程包括获取授权码、通过授权码换取访问令牌、使用访问令牌请求用户数据等步骤。 4. **HTTP...

    自定义绘制五边形雷达图(类似芝麻信用分数)

    本示例中,我们关注的是如何自定义绘制一个五边形雷达图,类似于芝麻信用分数展示的方式。雷达图通常用于多维度数据的可视化,每个轴代表一个特征或指标,数据点则位于这些轴的交点,通过连线形成一个或多边形。下面...

    芝麻信用NodeJSSDK.zip

    查询芝麻评分由于芝麻评分需要用户授权,因此首先需要生成授权URL生成授权URL授权URL可以通过姓名 身份证或者手机号得到, 同时又支持PC网页和H5页面,排列组合共4种情况如下手机号 PCconst { url } = ...

    Node.js-芝麻信用NodeJSSDK

    这个过程是建立安全连接的关键,使得双方可以对敏感数据进行加密传输,防止信息被第三方窃取。 **使用Node.js SDK操作步骤** 1. **安装SDK**:在你的Node.js项目中,你可以通过npm(Node.js包管理器)来安装芝麻...

    Android仿支付宝9.5芝麻信用分仪表盘

    在Android开发中,仿支付宝9.5.1芝麻信用分仪表盘是一项常见的UI设计任务,主要是为了实现类似支付宝应用中的动态、美观的信用分数展示。这个项目的核心在于创建一个能够实时更新并具有视觉吸引力的仪表盘组件。下面...

Global site tag (gtag.js) - Google Analytics