kos*_*aks 4 url post get objective-c request
我必须向localhost发送get或post请求:
<?php
if(@$_GET['option']) {
echo "You said \"{$_GET['option']}\"";
}else if(@$_POST['option']) {
echo "You said \"{$_POST['option']}\"";
}
?>
Run Code Online (Sandbox Code Playgroud)
我用这个代码:
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://localhost/wsh/index.php?option=Hello"]];
NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
NSString *get = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];
Run Code Online (Sandbox Code Playgroud)
它有效,但有一次在代码中.如果生病了另一次,申请已经终止.
我尝试使用ASIFormDataRequest:
ASIFormDataRequest *request = [[[ASIFormDataRequest alloc] initWithURL:@"http://localhost/wsh/index.php"] autorelease];
[request setPostValue:@"option" forKey:@"myFormField1"];
[request start];
NSError *error = [request error];
if (!error) {
NSString *response = [request responseString];
NSLog(response);
}else{
NSLog(@"error");
}
Run Code Online (Sandbox Code Playgroud)
它说:
2010-01-07 13:20:34.964 WSH[3351:903] -[NSCFString absoluteURL]: unrecognized selector sent to instance 0x160f8
2010-01-07 13:20:34.966 WSH[3351:903] error
Run Code Online (Sandbox Code Playgroud)
我的英语
您正在使用NSString需要NSURL对象的普通文字:[...] initWithURL:@"http://localhost/wsh/index.php"[...]
将此更改为initWithURL:[NSURL URLWithString:@"http://localhost/wsh/index.php"].
我想知道你是否也应该为post值切换值和键,即改变行
[request setPostValue:@"option" forKey:@"myFormField1"];
Run Code Online (Sandbox Code Playgroud)
至
[request setPostValue:@"myFormField1" forKey:@"option"];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21168 次 |
| 最近记录: |