php 支付宝用户信息授权,支付宝登录获取用户信息授权

这是支付宝demo中的一串代码

#pragma mark ==============点击模拟授权行为==============

- (void)doAlipayAuth

{

//重要说明

//这里只是为了方便直接向商户展示支付宝的整个支付流程;所以Demo中加签过程直接放在客户端完成;

//真实App里,privateKey等数据严禁放在客户端,加签过程务必要放在服务端完成;

//防止商户私密数据泄露,造成不必要的资金损失,及面临各种安全风险;

NSString *pid = @"2088*****";

NSString *appID = @"2016******";

NSString *privateKey = @"";

//pid和appID获取失败,提示

if ([pid length] == 0 ||

[appID length] == 0 ||

[privateKey length] == 0)

{

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示"

message:@"缺少pid或者appID或者私钥。"

delegate:self

cancelButtonTitle:@"确定"

otherButtonTitles:nil];

[alert show];

return;

}

//生成 auth info 对象

APAuthV2Info *authInfo = [APAuthV2Info new];

authInfo.pid = pid;

authInfo.appID = appID;

//auth type

NSString *authType = [[NSUserDefaults standardUserDefaults] objectForKey:@"authType"];

if (authType) {

authInfo.authType = authType;

}

//应用注册scheme,在AlixPayDemo-Info.plist定义URL types

NSString *appScheme = @"alipayEXPbyWinlee";

// 将授权信息拼接成字符串

NSString *authInfoStr = [authInfo description];

NSLog(@"authInfoStr = %@",authInfoStr);

// 获取私钥并将商户信息签名,外部商户可以根据情况存放私钥和签名,只需要遵循RSA签名规范,并将签名字符串base64编码和UrlEncode

id signer = CreateRSADataSigner(privateKey);

NSString *signedString = [signer signString:authInfoStr];

// 将签名成功字符串格式化为订单字符串,请严格按照该格式

if (signedString.length > 0) {

authInfoStr = [NSString stringWithFormat:@"%@&sign=%@&sign_type=%@", authInfoStr, si

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值