0

我已经使用带有 Restkit 的 POST 工作正常。但我不知道 Restkit 中的 POST 和 PUT 有什么区别。我只是将方法类型更改为“PUT”。但是我的参数没有发送到 Webservice。

下面是我的代码,POST 的相同代码对我有用。

AFHTTPClient *client = [AFHTTPClient clientWithBaseURL:URL];
[client setDefaultHeader:@"Authorization" value:[DSUserDefaults user].accessToken];

NSDictionary *prefDict=[NSDictionary dictionaryWithObjectsAndKeys: @"",@"COMPANY_ID" ,@"",@"JOBTITLE",@"2",@"JOBTYPE" ,@"San Franscisco, US",@"LOCATION", nil];
NSLog(@"prefDict  %@",prefDict);

NSMutableURLRequest *request = [client requestWithMethod:PUT path:@"" parameters:prefDict];
[request setURL:URL];
[request setTimeoutInterval:60.0];
[request setHTTPMethod:PUT];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
[AFHTTPRequestOperation addAcceptableStatusCodes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(100, 500)]];

[operation setCompletionBlockWithSuccess: ^(AFHTTPRequestOperation *operation, id responseObject) {
    NSLog(@"operation.responseString: %@", operation.responseString);

    NSData *data =[operation.responseString dataUsingEncoding:NSUTF8StringEncoding];
   }

如何发送“文本”数据请求。我不需要作为字典发送。

4

1 回答 1

1

PUT 和 POST 不是 RestKit 中的不同设置,它们是不同的 HTTP 上传类型设置,它们被传递到将要发送的 URL 请求中。因此,它们由服务器处理。如果服务器未配置为处理它们,那么您将无法获得预期的功能。GET 和 POST 相对常见,PUT 不太常见,因此可能不会包含在您的服务器实现中。

有关 POST、PUT 和 GET 的详细信息,请参见此处

于 2013-08-27T15:39:50.400 回答