0

PHP と Objective-c で POST と GET のものを使用する方法を学ぼうとしています。

問題が発生しました。objective-c で POST を実行した後、返される結果を取得するにはどうすればよいですか?

私のPHPファイルは次のとおりです。

<html>
<head><title>Bug Reporter</title></head>
<body>
<h2>Fancy Bug Reporter</h2>
<hr />
<?php
if (isset($_POST['go']))
{
        // Form was posted
        print "User submitted bug: ". $_POST['name'] . ": " . $_POST['description'];
}
else
{
        // Form was not posted, display form
?>
<form method="POST" action="<?php echo $PHP_SELF; ?>">
Bug Name:<br /><input type="text" name="name" maxlength="100" /><br />
Bug Description:<br /><input type="text" name="description" maxlength="1000" size="80" /><br />
<input type="submit" name="go" value="Add Bug">
</form>
<?php
}
?>
</body>
</html>

目標 c で:

    NSMutableURLRequest *request =
    [[NSMutableURLRequest alloc] initWithURL:
     [NSURL URLWithString:@"http://xxxxx.com/xxx.php"]];

    [request setHTTPMethod:@"POST"];

    NSString *postString = @"go=1&name=Bad%20Bad%20Bug&description=This%20bug%20is%20really%20really%20super%20bad.";

    [request setValue:[NSString
                       stringWithFormat:@"%d", [postString length]]
   forHTTPHeaderField:@"Content-length"];

    [request setHTTPBody:[postString
                          dataUsingEncoding:NSUTF8StringEncoding]];


    [[NSURLConnection alloc]
     initWithRequest:request delegate:self];
4

2 に答える 2

1

NSURLConnectionDelegate認証、失敗、成功、受信したデータなど、リクエストに関連するネットワーク接続イベントに対して呼び出されるメソッドを実装する必要があります。

また、ブロックベースのメソッドを提供する優れたネットワーク ライブラリであるAFNetworkingをご覧になることをお勧めします。NSURLConnection

単純な方法よりもはるかに便利であることがわかった場合NSURLConnection

于 2012-12-17T22:33:16.837 に答える
0

接続を保存せず、開始に失敗します。新しい便利な方法を使用します。

[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse*r, NSData*d, NSError*e) { 
     ...
 }
于 2012-12-18T11:02:53.080 に答える