ios-使用微信支付的时候,一定要商户服务器先调用【统一下单API】生成预付单吗?

问题描述

使用微信支付的时候,一定要商户服务器先调用【统一下单API】生成预付单吗?

看了微信的demo和文档,它们的demo里的调用支付方法
都没有商品的名称 描述 价格这些信息,
我们公司android那边说不需要先调下单api,他们都直接调用支付宝支付,
不知道该怎么实现

 + (NSString *)jumpToBizPay {

    //============================================================
    // V3&V4支付流程实现
    // 注意:参数配置请查看服务器端Demo
    // 更新时间:2015年11月20日
    //============================================================
    NSString *urlString   = @"http://wxpay.weixin.qq.com/pub_v2/app/app_pay.php?plat=ios";
        //解析服务端返回json数据
        NSError *error;
        //加载一个NSURL对象
        NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlString]];
        //将请求的url数据放到NSData对象中
        NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
        if ( response != nil) {
            NSMutableDictionary *dict = NULL;
            //IOS5自带解析类NSJSONSerialization从response中解析出数据放到字典中
            dict = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error];

            NSLog(@"url:%@",urlString);
            if(dict != nil){
                NSMutableString *retcode = [dict objectForKey:@"retcode"];
                if (retcode.intValue == 0){
                    NSMutableString *stamp  = [dict objectForKey:@"timestamp"];

                    //调起微信支付
                    PayReq* req             = [[[PayReq alloc] init]autorelease];
                    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=%ldnpackage=%@nsign=%@",[dict objectForKey:@"appid"],req.partnerId,req.prepayId,req.nonceStr,(long)req.timeStamp,req.package,req.sign );
                    return @"";
                }else{
                    return [dict objectForKey:@"retmsg"];
                }
            }else{
                return @"服务器返回错误,未获取到json对象";
            }
        }else{
            return @"服务器返回错误";
        }
}

解决方案

。。看错了,以为是Android的

解决方案二:

支付宝 可以直接调用 微信必须本地进行签名

解决方案三:

是的,不然后支付不了,简单来说就是要先在微信生成一个订单,然后用户才知道付多少钱

时间: 2024-09-09 06:40:23

ios-使用微信支付的时候,一定要商户服务器先调用【统一下单API】生成预付单吗?的相关文章

iOS集成微信支付开发_IOS

本文实例为大家分享了iOS集成微信支付开发代码,供大家参考,具体内容如下 首先需要理清楚流程: 1.用户使用APP客户端,选择商品下单. 2.商户客户端(就是你做的APP)将用户的商品数据传给商户服务器,请求生成支付订单. 3.商户后台调用统一下单API向微信的服务器发送请求,微信服务器生成预付单,并生成一个prepay_id返回给商户后台. 4.商户后台将这个prepay_id返回给商户客户端. 5.用户点击确认支付,这时候商户客户端调用SDK打开微信客户端,进行微信支付. 6.微信客户端向微

IOS开发--微信支付

前言:下面介绍微信支付的开发流程的细节,图文并茂,你可以按照我的随笔流程过一遍代码.包你也学会了微信支付.而且支付也是面试常问的内容.   正文:   1.首先在开始使用微信支付之前,有一些东西是开发者必须要知道的,打开下面链接: https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=3_1 然后可以看到下面的页面,这个就是微信支付商户平台的开发文档,很多东西是可以查阅和了解的,在开发使用微信SDK支付功能的时候,遇到了问题也可以到这找找相

iOS - WXPay 微信支付

1.微信支付申请 微信支付官方集成指引 微信支付官方集成指导视频 微信 APP 支付开发者文档 微信公众平台 微信开放平台 微信商户平台 1.1 微信 APP 支付申请步骤 APP 支付:APP 支付又称移动端支付,是商户通过在移动端应用 APP 中集成开放 SDK 调起微信支付模块完成支付的模式. 1.1.1 第 1 阶段 1.注册微信开放平台帐号,注册成为微信开放平台开发者. 2.认证开发者资质,开发者资质认证通过后才可申请微信支付,申请审核服务费:300 元/次(年). 3.创建 APP

app端微信支付(二) - 生成预付单

​前一篇文章的时序图中说了,app端调用微信支付必须先由后台调用微信后台生成预付单,再构建参数给手机端,而数据的构建要以xml形式,那么看看代码具体实现吧,代码已经精简过了,自己的业务已经除去,精简的代码附上注释是可以直接调用微信后台的 这个是微信所要接受的参数,咱们可以把它构建成一个entity public class WXPrepay { private static String unifiedorder = "https://api.mch.weixin.qq.com/pay/unif

iOS 支付宝 微信支付 集成 支付成功不执行代理方法

iOS 支付宝或微信支付当支付成功后都会在AppDelegate中调用 - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url; - (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)anno

Android集成微信支付功能_Android

准备工作这里就不说了,包括签约和申请APPID,附上微信开放平台APP开发步骤,不懂的同学可以参考这里: https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_5 上面的步骤很详细,这里主要说下调起支付的注意事项.按照上面文档中说的商户服务器生成支付订单,先调用统一下单API生成预付单,获取到prepay_id后将参数再次签名传输给APP发起支付. 相关代码如下:  /** * 商户服务器生成支付订单,先调用统一下单API(详见

Android集成微信支付功能

准备工作这里就不说了,包括签约和申请APPID,附上微信开放平台APP开发步骤,不懂的同学可以参考这里: https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_5 上面的步骤很详细,这里主要说下调起支付的注意事项.按照上面文档中说的商户服务器生成支付订单,先调用统一下单API生成预付单,获取到prepay_id后将参数再次签名传输给APP发起支付. 相关代码如下: /** * 商户服务器生成支付订单,先调用统一下单API(详见第

利用Python开发微信支付的注意事项_python

前言 微信支付是由微信及财付通联合推出的移动支付创新产品.如今,随着微信支付的全面开放,相关需求也越来越多,很多开发人员进行微信支付开发及商家申请微信支付时,面临着诸多疑惑. 要想开发顺利进行,首先要对业务流程有个清晰的认识.这里以微信公众号支付为例,因此也借用微信支付官方文档中的业务流程图: 接下来来关注几个开发过程中的关键点,包括:       1.生成商户订单与调用统一下单 API       2.微信服务器交互的数据格式       3.公众号支付下网页内通过 JS-API 调起支付  

android-安卓实现微信支付,怎么调不出微信支付的页面。

问题描述 安卓实现微信支付,怎么调不出微信支付的页面. 安卓实现微信支付,怎么调不出微信支付的页面. 目前没有请求后台 只是测试 微信支付测试demo需要哪些条件 解决方案 微信支付的第二步:JS页面支付微信支付 JAVA实现 解决方案二: 需要申请测试的key或者使用正式key打包测试 解决方案三: 看一下这个:https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=8_1 注意所有操作都是要打包签名才能成功的! 解决方案四: 支付的业务流