2012-11-29 3 views
0

J'essaye d'envoyer une requête HTTP-POST à ​​une paire clé-valeur en utilisant la méthode POST, qui en retour m'envoie une réponse jSON.Comment POST la requête pour obtenir la réponse jSON

CODE

//[dictionnary setObject:@"tId" forKey:@"serialnumber"]; 
NSMutableDictionary *dictionnary = [NSMutableDictionary dictionary]; 
     [dictionnary setObject:[NSString stringWithFormat:@"tId"] forKey:@"serialnumber"]; 
    [dictionnary setObject:[NSString stringWithFormat:@"tname"] forKey:@"mobileimei"]; 
    [dictionnary setObject:[NSString stringWithFormat: @"tprice"] forKey:@"submerchantguid"]; 
    [dictionnary setObject:[NSString stringWithFormat: @"tquan"] forKey:@"transactionid"]; 
    [dictionnary setObject:[NSString stringWithFormat: @"tquan"] forKey:@"emailid"]; 
    [dictionnary setObject:[NSString stringWithFormat: @"tquan"] forKey:@"mobileno"]; 
    [dictionnary setObject:[NSString stringWithFormat: @"tquan"] forKey:@"signature"]; 
    [dictionnary setObject:[NSString stringWithFormat:@"tquan"] forKey:@"photo"]; 


NSError *error = nil; 
    NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dictionnary 
                 options:kNilOptions 
                 error:&error]; 
    NSLog(@"Error is %@",error); 

    NSString *urlString = @"MY_POST_URL/transaction/model/transactionsuccess"; 
    //NSString *urlString = @"http://yahoo.com"; 
    NSURL *url = [NSURL URLWithString:urlString]; 
    NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; 
    [request setHTTPMethod:@"POST"]; 

    [request setHTTPBody:jsonData]; 
    NSURLResponse *response = NULL; 
    NSError *requestError = NULL; 
    NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&requestError]; 
    NSLog(@"request Error %@",requestError); 
    NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding] ; 
    NSLog(@"%@", responseString); 

SORTIE

inside submitinfo method 
2012-11-29 12:13:02.238 ReaderDeployment[1568:11f03] Error is (null) 
2012-11-29 12:13:03.005 ReaderDeployment[1568:11f03] request Error (null) 
2012-11-29 12:13:03.006 ReaderDeployment[1568:11f03] <!DOCTYPE html PUBLIC 
    "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
<title>PHP notice</title> 

<style type="text/css"> 
/*<![CDATA[*/ 
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0;} 
body{line-height:1;} 
ol,ul{list-style:none;} 
blockquote,q{quotes:none;} 
blockquote:before,blockquote:after,q:before,q:after{content:none;} 
:focus{outline:0;} 
ins{text-decoration:none;} 
del{text-decoration:line-through;} 
table{border-collapse:collapse;border-spacing:0;} 

body { 
    font: normal 9pt "Verdana"; 
    color: #000; 
    background: #fff; 
} 

h1 { 
    font: normal 18pt "Verdana"; 
    color: #f00; 
    margin-bottom: .5em; 
} 

h2 { 
    font: normal 14pt "Verdana"; 
    color: #800000; 
    margin-bottom: .5em; 
} 

h3 { 
    font: bold 11pt "Verdana"; 
} 

pre { 
    font: normal 11pt Menlo, Consolas, "Lucida Console", Monospace; 
} 

pre span.error { 
    display: block; 
    background: #fce3e3; 
} 

pre span.ln { 
    color: #999; 
    padding-right: 0.5em; 
    border-right: 1px solid #ccc; 
} 

pre span.error-ln { 
    font-weight: bold; 
} 

.container { 
    margin: 1em 4em; 
.......... 

S'il vous plaît me corriger avec ce qui ne va pas dans le code.I ont également essayé d'envoyer les détails de toutes les valeurs à l'aide

[dictionnary setObject:@"tId" forKey:@"serialnumber"]; 

format également. Je n'obtiens aucune erreur, toujours la réponse de jSON attendue n'est pas accomplie. Backend n'introduit l'information, et jette l'état que "0" OU "1". Au lieu de la production bizarre est affichée, je suppose que c'est le manuscrit de css.

Répondre

1

Vous avez erreur sur le côté serveur, vous ne pouvez pas utiliser le JSON directement vous devez convertir JSON tableau json_decode tout d'abord utiliser ensuite les valeurs du tableau

c'est de savoir comment convertir le php JSON tableau http://php.net/manual/en/function.json-decode.php

Egalement pour retourner json, vous devez reformater votre tableau php en code JSON

Questions connexes