我有一個API用於刪除服務器數據庫中的記錄。我曾經使用請求ID構建API。它使用CURL,但在Restkit中它似乎給出了一個錯誤。 的捲曲是:Restkit .20中的刪除對象沒有使用JSON值
curl -d '{eve:{mod_policy:"current"}}' -X DELETE -H Content-Type:application/json https://myurl.com/eve/eve_id?token=my_aut_token\&apikey=myapi_key.
我POST & PATCH檢查。它需要JSON
作爲一個正確的形式。
我RestKit代碼示例:
RKObjectMapping *requestMapping = [RKObjectMapping requestMapping];
[requestMapping addAttributeMappingsFromDictionary:@{ @"modPolicy" : @"mod_policy"}];
RKRequestDescriptor *requestDescriptor = [RKRequestDescriptor requestDescriptorWithMapping:requestMapping objectClass:[Event class] rootKeyPath:@"eve"];
RKObjectMapping *responseMapping = [RKObjectMapping mappingForClass:[Events class]];
[responseMapping addAttributeMappingsFromDictionary:@{
@"data" : @"data",
@"status":@"status"
}];
RKResponseDescriptor *responseDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:responseMapping pathPattern:nil keyPath:@"" statusCodes:[NSIndexSet indexSetWithIndex:200]];
[objectManager addRequestDescriptor:requestDescriptor];
[objectManager addResponseDescriptor:responseDescriptor];
NSString * urlPath = [NSString stringWithFormat:@"/eve/%@?token=%@&apikey=%@",eventID,loginToken,apiKey];
[objectManager deleteObject:hubEve path:urlPath parameters:nil success:^(RKObjectRequestOperation *operation, RKMappingResult *result)
{
DLog(@" response code is %d",operation.HTTPRequestOperation.response.statusCode);
Events * _event = [result firstObject];
DLog(@"status %@",_event.status);
if([_eventt.status isEqualToString:@"success"])
{
DLog("Move Next");
}
} failure:^(RKObjectRequestOperation *operation, NSError *error) {
DLog("error %@",error);
}];
一些日誌的詳細信息,如果我發送DeleteObject的請求中:
request.body=(null) //Restkit Log
或者我叫爲Post對象/補丁對象
明確不DELETE
請求進行
request.body={"eve":{"mod_policy":"all"}} //Restkit Log
你是否在文檔的某個地方找到了這個地方? – Hons
@Hons我想我看了看代碼... – Wain