iOS微信支付之調(diào)起支付

前兩天又一次要搞微信支付腌零,想想就難過。因為貴公司的文檔真心無力吐槽续誉。前面幾個步驟還好莱没,這里記錄一下調(diào)起支付的相關代碼初肉。

iOS微信支付文檔地址

集成 實例化 調(diào)用弄完后酷鸦,翻到了“調(diào)起支付”這里。懵逼了很久牙咏。

下面三個方法記錄一下

1.MD5加密算法
2.微信需要的簽名算法(sign)
3.調(diào)起支付方法

// 傳入訂單信息(大部分支付的訂單信息都是服務端返回的臼隔,客戶端生成訂單信息會存在安全問題)
- (void)weixinPayRequestWithOrderString:(NSString *)orderString
{
    time_t now;
    time(&now);
    NSString *time_stamp = [NSString stringWithFormat:@"%ld",now];
    NSString *nonce_str = [self md5:time_stamp];
    NSString *package = @"Sign=WXPay";
    
    NSMutableDictionary *signParams = [NSMutableDictionary dictionary];
    [signParams setObject:APP_ID forKey:@"appid"];
    [signParams setObject:nonce_str forKey:@"noncestr"];
    [signParams setObject:package forKey:@"package"];
    [signParams setObject:MCH_ID forKey:@"partnerid"];
    [signParams setObject:time_stamp forKey:@"timestamp"];
    [signParams setObject:orderString forKey:@"prepayid"];
    
    NSString *sign = [self createMD5Sign:signParams];
    
    PayReq *req = [[PayReq alloc] init];
    req.openID = APP_ID;    //APPID
    req.partnerId = MCH_ID; //商戶號
    req.prepayId = orderString;
    req.nonceStr = nonce_str;
    req.timeStamp = time_stamp.intValue;
    req.package = package;
    req.sign = sign;
    [WXApi sendReq:req];
}
// MD5加密方法
- (NSString *)md5:(NSString *)input
{
    const char *cStr = [input UTF8String];
    unsigned char digest[16];
    CC_MD5(cStr,(CC_LONG)strlen(cStr), digest); // This is the md5 call
    
    NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];
    
    for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)
        [output appendFormat:@"%02x", digest[i]];
    
    return  output;
}
- (NSString *)createMD5Sign:(NSMutableDictionary *)dict
{
    NSMutableString *contentString = [NSMutableString string];
    NSArray *keys = [dict allKeys];
    //按字母順序排序
    NSArray *sortedArray = [keys sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {
        return [obj1 compare:obj2 options:NSNumericSearch];
    }];
    //拼接字符串
    for (NSString *categoryId in sortedArray) {
        if (![[dict objectForKey:categoryId] isEqualToString:@""] && ![categoryId isEqualToString:@"sign"] && ![categoryId isEqualToString:@"key"]) {
            [contentString appendFormat:@"%@=%@&", categoryId, [dict objectForKey:categoryId]];
        }
    }
    //添加key字段
    [contentString appendFormat:@"key=%@", PARTNER_ID];
    //得到MD5 sign簽名
    NSString *md5Sign = [self md5:contentString];
    return md5Sign;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市妄壶,隨后出現(xiàn)的幾起案子摔握,更是在濱河造成了極大的恐慌,老刑警劉巖丁寄,帶你破解...
    沈念sama閱讀 206,214評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件氨淌,死亡現(xiàn)場離奇詭異泊愧,居然都是意外死亡,警方通過查閱死者的電腦和手機盛正,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評論 2 382
  • 文/潘曉璐 我一進店門删咱,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人豪筝,你說我怎么就攤上這事痰滋。” “怎么了续崖?”我有些...
    開封第一講書人閱讀 152,543評論 0 341
  • 文/不壞的土叔 我叫張陵敲街,是天一觀的道長。 經(jīng)常有香客問我严望,道長多艇,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,221評論 1 279
  • 正文 為了忘掉前任像吻,我火速辦了婚禮墩蔓,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘萧豆。我一直安慰自己奸披,他們只是感情好,可當我...
    茶點故事閱讀 64,224評論 5 371
  • 文/花漫 我一把揭開白布涮雷。 她就那樣靜靜地躺著阵面,像睡著了一般。 火紅的嫁衣襯著肌膚如雪洪鸭。 梳的紋絲不亂的頭發(fā)上样刷,一...
    開封第一講書人閱讀 49,007評論 1 284
  • 那天,我揣著相機與錄音览爵,去河邊找鬼置鼻。 笑死,一個胖子當著我的面吹牛蜓竹,可吹牛的內(nèi)容都是我干的箕母。 我是一名探鬼主播,決...
    沈念sama閱讀 38,313評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼俱济,長吁一口氣:“原來是場噩夢啊……” “哼嘶是!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起蛛碌,我...
    開封第一講書人閱讀 36,956評論 0 259
  • 序言:老撾萬榮一對情侶失蹤聂喇,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后希太,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體克饶,經(jīng)...
    沈念sama閱讀 43,441評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡彤路,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,925評論 2 323
  • 正文 我和宋清朗相戀三年洲尊,在試婚紗的時候發(fā)現(xiàn)自己被綠了奈偏。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,018評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡惊来,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出矢渊,到底是詐尸還是另有隱情枉证,我是刑警寧澤矮男,帶...
    沈念sama閱讀 33,685評論 4 322
  • 正文 年R本政府宣布毡鉴,位于F島的核電站猪瞬,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏陈瘦。R本人自食惡果不足惜潮售,卻給世界環(huán)境...
    茶點故事閱讀 39,234評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望饲做。 院中可真熱鬧遏弱,春花似錦、人聲如沸泪姨。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至仗处,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間婆誓,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評論 1 261
  • 我被黑心中介騙來泰國打工郁轻, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留好唯,地道東北人。 一個月前我還...
    沈念sama閱讀 45,467評論 2 352
  • 正文 我出身青樓骑篙,卻偏偏與公主長得像森书,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子拄氯,可洞房花燭夜當晚...
    茶點故事閱讀 42,762評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 自己總結(jié)的微信支付寶支付流程和注意點: 準備工作: 需要公司的營業(yè)執(zhí)照译柏,稅務信息,等老板的身份證信息等鄙麦,我記得,用...
    Www劉閱讀 18,555評論 2 50
  • 引言 秋高氣爽,天氣轉(zhuǎn)涼乘盼,正是學習工作做的好時候。(~ ̄▽ ̄)~~(~ ̄▽ ̄)~ 我是個phper最近在寫微信支付...
    恩就是這個名閱讀 7,933評論 2 15
  • 前言:本篇文章目的在于梳理知識绸栅,鞏固思想,學習總結(jié)粹胯。有什么好的建議,都可以留言渊抽。互相促進议忽!總觀,微信支付栈幸,也沒心思...
    麥穗0615閱讀 10,014評論 8 70
  • 空氣扭曲交錯而過 人性影影綽綽 思緒混雜著生活的詰難 像擠牙膏般被擠出 命運的齒輪毫不留情的轉(zhuǎn) 遠處的悲鐘在遠處響...
    年漠閱讀 107評論 1 1
  • 謝謝你很在意我芍锚,看得見我的好。 送了兩個書簽給Cary老師和Vic老師并炮,因為他們經(jīng)常看書逃魄,所以,今天逛書店時伍俘,突發(fā)...
    長亭微雨閱讀 351評論 0 0