5

Web サービスと通信して応答を取得するために、ASIHTTPRequest クラスを使用しています。これは、サーバーにリクエストを送信する方法です

NSString *str = [NSString stringWithFormat:@"%@verifyLogin.json", serverUrl];
NSURL *url = [NSURL URLWithString:[str stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
ASIHTTPRequest *request = [[[ASIHTTPRequest alloc] initWithURL:url] autorelease];
[request addRequestHeader:@"Content-Type" value:@"text/x-gwt-rpc; charset=utf-8"];
NSDictionary* data = [NSDictionary dictionaryWithObjectsAndKeys:emailId, @"username", pwd, @"password", nil];
[request appendPostData: [[data JSONFragment] dataUsingEncoding: NSUTF8StringEncoding]];
[request setRequestMethod:@"POST"];
[request setDelegate:self];
[request setDidFinishSelector: @selector(gotLoginResponse:)];
[request setDidFailSelector: @selector(loginRequestFailed:)];

[networkQueue addOperation: request];
[networkQueue go];

コントロールはすぐにエラー ルーチンに移動し、エラーの説明とドメインが表示されます。

HTTP 接続およびASIHTTPRequestErrorDomainを開始できません

HTTP 要求をチェックするためのデスクトップ ツールを介して同じ要求を機能させることができるので、設定がすべて正しいことがわかります。

リクエストを送信する際に、ここで何が欠けているか教えてもらえますか?

ありがとう。

4

3 に答える 3

5

以前にコメントしたように、

最初の行には「%verifyLogin.json」と表示されています。そうすべきではありません。"%@ verifyLogin.json" ????

于 2009-10-20T14:01:58.037 に答える
0

リクエストが失敗したときのステータスコードを確認できますか? 私は最近、ASI-HTTP-Request を使用した JSON ユーザー認証の問題に対処しました。この問題では、最初のリクエストが常にステータス コード 0 で失敗し、何らかの基礎となるネットワーク接続エラーが発生しました (インターネットに接続されていないかのように、明らかに接続されていました)。 .

その特定のリクエストを永続的な接続を使用しないように設定することで解決できました。

だからまずはやってみる!

于 2010-07-30T15:15:45.020 に答える