//自己请求订单
- (void)weiChatPay:(NSString *)pay callback:(WXModuleCallback)callback{
NSLog(@"weChat支付");
NSString *urlStr = pay;
NSError *error;
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlStr]];
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
if (response != nil) {
NSMutableDictionary *dict = NULL;
dict = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error];
NSLog(@"urlStr= %@", urlStr);
if (dict != nil) {
NSMutableString *retcode = [dict objectForKey:@"retcode"];
if (retcode.intValue == 0) {
NSMutableString *stamp = [dict objectForKey:@"timestamp"];
//调起微信支付
PayReq* req = [[PayReq alloc] init];
/** 商家向财付通申请的商家id */
req.partnerId = [dict objectForKey:@"partnerid"];
/** 预支付订单 */
req.prepayId = [dict objectForKey:@"prepayid"];
/** 随机串,防重发 */
req.nonceStr = [dict objectForKey:@"noncestr"];
/** 时间戳,防重发 */
req.timeStamp = stamp.intValue;
/** 商家根据财付通文档填写的数据和签名 */
req.package = [dict objectForKey:@"package"];
/** 商家根据微信开放平台文档对数据做的签名 */
req.sign = [dict objectForKey:@"sign"];
[WXApi sendReq:req];
//日志输出
NSLog(@"appid=%@\npartid=%@\nprepayid=%@\nnoncestr=%@\ntimestamp=%ld\npackage=%@\nsign=%@",[dict objectForKey:@"appid"],req.partnerId,req.prepayId,req.nonceStr,(long)req.timeStamp,req.package,req.sign );
}else{
NSDictionary *retmsg = [dict objectForKey:@"retmsg"];
NSLog(@"retmsg=%@", retmsg);
}
}else{
[MBProgressHUD showError:@"服务器返回错误,未获取到json对象"];
NSLog(@"服务器返回错误,未获取到json对象");
}
}else{
[MBProgressHUD showError:@"服务器返回错误"];
NSLog(@"服务器返回错误");
}
if (![@"" isEqual:urlStr]) {
[MBProgressHUD showError:@"支付失败"];
NSLog(@"支付失败");
}
}