iPhone アプリで Web サービスを作成するために ASIHTTPRequest クラスを使用しています。そのために使用するサンプルコードを次に示します
-(void)startRequest {
NSURL *url = [NSURL URLWithString:@"www.myURL/iOS/objc.php"];
//NSURL *url = [NSURL URLWithString:@"http://localhost:8888/API/objc.php"];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setDelegate:self];
[request setPostValue:@"1" forKey:@"getWines"];
[request startAsynchronous];
}
そして明らかに、私はこの関数で結果をキャッチします:
- (void)requestFinished:(ASIHTTPRequest *)request {
NSString *result = request.responseString;
}
ローカルホストの URL でシミュレーターを起動すると
NSURL *url = [NSURL URLWithString:@"http://localhost:8888/API/objc.php"];
私のアプリはうまくいきます。しかし、私が
- デバイスで起動
- シミュレーターを使用してサーバーの場所を起動します
何も起こりません!つまり、 requestFinished が呼び出されることはありません!
Google Chromeで試してみると、いくつかの答えが得られましたが、どちらの条件も何もありません。