2017-06-21 17 views
0

apiがあり、geoPointを投稿してからデータを取得する必要があります。これはPostmanで正常に動作します。私のコードで this api works fine on PostmanパラメータとしてgeoPointの配列を送信しますが、API応答からのデータはnilですか?

、画像に示されているように、私はapi

NSArray *geoPoint = @[@114.33f, @22.44f]; 

NSDictionary *geoPointDic = @ {@"geoPoint" : geoPoint}; 
NSDictionary *inData = @{ 
         @"action" : @"getNearbyEventList", 
         @"data" : geoPointDic}; 

NSDictionary *parameters = @{@"data" : inData}; 

NSLog(@"geoPoint is %@", geoPoint); 
NSLog(@"upcoming events parameters %@", parameters); 

[_manager POST:GetURL parameters:parameters progress:nil success:^(NSURLSessionDataTask * _Nonnull task, NSDictionary * responseObject) { 

    NSLog(@"responseObject is %@", responseObject); 
    NSLog(@"responseObject - data is %@", responseObject[@"data"]); 

    NSArray *eventsArray = responseObject[@"data"]; 

を呼び出すために、以下の方法を使用しますが、出力は

ときNSLogパラメータ:

events parameters { 
    data =  { 
     action = getNearbyEventList; 
     data =   { 
      geoPoint =    (
       "114.33", 
       "22.44" 
      ); 
     }; 
    }; 
} 

the api response looks like

は、私は私のパラメータが間違っているフォーマットであるかもしれないと思うので、私は、以下の方法を試してみましたが、誰が、誰がどのようPostmanに示すようにデータを取得するために私に言うことができる、だから、

//NSArray *geoPoint = [[NSArray alloc] init]; 

//NSArray *geoPoint = [[NSArray alloc] initWithObjects:@"114", @"22", nil]; 

//NSMutableArray *geoPoint = [[NSMutableArray alloc] init]; 

//[geoPoint addObject:@114]; 

//[geoPoint addObject:@22]; 

//NSArray *geoPoint = [[NSArray alloc] initWithObjects:@"114", @"22", nil]; 

//NSString *geoPoint = @"[114.33,22.44]"; 

をしてください動作しますか?

ありがとうございます!

答えて

0

あなたは試すことができます。同じ

NSData *dataBody = [NSJSONSerialization dataWithJSONObject:parameters options:0 error:nil]; 
NSString *json = [[NSString alloc] initWithData:dataBody encoding:NSUTF8StringEncoding]; 
NSLog(@"%@",json); 

オブジェクトのJSONを使用すると、サーバーに送信するデータです。

+0

ありがとうございました。私が試してみました。しかし、NSDictionaryを送信せずにパラメータとしてNSStringを使用すると、「Request failed:内部サーバエラー(500)」が発生します。 >< –

+0

私はそれがあなたにとって有用だと思います。 https://stackoverflow.com/questions/19099448/send-post-request-using-nsurlsession –

関連する問題