从NSURLRequest获取POST参数

时间:2011-04-11 09:42:44

标签: objective-c nsurlrequest

是否可以从方法中的NSURLRequest中检索POST参数的值;

-(BOOL) webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType

是这样,这是怎么做到的?

2 个答案:

答案 0 :(得分:3)

这应该可以使用NSURLProtocol的类方法:

+ (id)propertyForKey:(NSString *)key inRequest:(NSURLRequest *)request

所以如果你有一个名为“地方”的房产,你可以试试:

[NSURLProtocol propertyForKey:@"place" inRequest:myRequestObject]

<强> [编辑] 如果要检索所有属性,我认为您必须使用- (NSData *)HTTPBody 中的NSURLRequest,然后自己解析属性名称/值。 urldecode和RegEx应该没问题。

答案 1 :(得分:0)

    NSURLRequest *request = ...
    NSError *error = nil;
    NSDictionary *parameters = [NSJSONSerialization JSONObjectWithData:[request HTTPBody] options:0 error:&error];