【问题标题】:Sending HTTP POST request in iOS with JSON在 iOS 中使用 JSON 发送 HTTP POST 请求
【发布时间】:2013-02-27 10:32:38
【问题描述】:

所以我目前正在使用 Facebook 登录我的 iOS 应用程序,服务器管理员最近通过要求 Facebook 访问令牌以及通过 https 进行所有连接来添加安全身份验证。这是我尝试运行的代码,但无论我做什么,我都会收到 500 的服务器响应错误(内部服务器错误)。有什么想法吗?

NSMutableURLRequest *request = [NSMutableURLRequest
                                requestWithURL:[NSURL URLWithString:@"https://XXXXXXXXXXXXXXXX/users.json"]];

NSDictionary *requestData = [[NSDictionary alloc] initWithObjectsAndKeys:
                     userID, @"facebook_id",
                     FBAccessToken, @"fb_token",
                     userName, @"name",
                     nil];
NSError *error;
NSData *postData = [NSJSONSerialization dataWithJSONObject:requestData options:0 error:&error];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[request setHTTPMethod:@"POST"];
[request setHTTPBody:postData];
NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];

【问题讨论】:

  • 500 错误通常意味着问题出在服务器而不是客户端。 pcsupport.about.com/od/findbyerrormessage/a/500servererror.htm
  • 这里没有太多可做的。响应正文中有什么内容?
  • @MikeD 在他们添加 facebook 安全性之前工作正常,并且在 web 和 android 版本的应用程序上工作的人都能够与服务器通信。
  • @JefferyThomas 你能给我响应正文的代码 sn-p,我会发布我得到的内容吗?

标签: ios json facebook http post


【解决方案1】:

您还需要遵守 NSURLConnectionDelagate 协议。

【讨论】:

    【解决方案2】:

    这是您记录响应正文的方式。

    @property (strong, nonatomic) NSMutableData *responseData;
    
    - (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
    {
        self.responseData = [NSMutableData data];
        …
    }
    
    - (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
    {
        [self.responseData appendData:data];
        …
    }
    
    - (void)connectionDidFinishLoading:(NSURLConnection *)connection
    {
        NSLog(@"response data - %@", [[NSString alloc] initWithData:self.responseData encoding:NSUTF8StringEncoding]);
        …
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-04
      • 2014-04-06
      • 2018-08-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多