0

私は iOS が初めてで、HTTP リクエストと POST および GET メソッドについて読み始めたばかりです。たとえば、ユーザーに文字列を入力させ、そのデータを Web サイト (この例では www.rhymezone.com とします) に送信し、その文字列で検索して、その検索結果を取得したいとします。私のアプリケーション内。これは HTTP ポスト メソッドで行われますか? または何?どんな助け/例も大歓迎です。また、このようなチュートリアルがあれば、それもありがたいです。

例として、これが私が試したことです:

NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.rhymezone.com/r/rhyme.cgi?Word=test&typeofrhyme=perfect&org1=syl&org2=l&org3=y"]];

NSURLConnection *connection = [NSURLConnection connectionWithRequest:request delegate:self];



- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
{
    NSString *dataAsString=[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
    NSLog(@"data: %@",dataAsString);
 }

これにより、Web サイトのソース全体が出力されます (単語 test の語韻を検索します)。Web サイトのソースを調べて返される単語を抽出するメソッドを書くことは確かにできますが、これは正しくないように感じます。さまざまな単語の韻を踏む私の方法は、ここで URL を変更するだけなので、'test' と表示されている場所は、ユーザーが入力したものに変更します。

ありがとう

4

3 に答える 3

1

AFNetworkingとRestKitを調べてください。

JSON / XMLを使用するパブリックAPIを呼び出してから、組み込みのパーサーまたはパーサーライブラリを使用して必要なデータを抽出するのが最も簡単です。

URLのコンテンツをダウンロードするだけで、WebサイトにアクセスするなどのHTTPGETリクエストが実行されます。

このリンクでは、GETとPOSTの違いについてもう少し詳しく説明しています。 いつPOSTを使用し、いつGETを使用しますか?

于 2012-12-25T22:37:37.873 に答える
1

あなたが何をしようとしているのかを正しく理解していれば、唯一のオプションはHTTPリクエストを送信することです(あなたがしているように、ウェブサイトが期待するものに応じてGETまたはPOST)、結果を解析してすべてをフィルタリングします関係のない情報。

REST API または JSON API を提供する Web サイトを使用してクエリを送信し、必要な情報だけを (特定の形式で) 取得する場合は、別のアプローチが可能です。

そのため、使用している Web サイトに大きく依存しますが、一般的なケースでは、唯一のオプションは解析です。

(または、 を介してページの完全なコンテンツを表示することもできますUIWebView。これには接続を明示的に設定する必要はありませんが、それがあなたがやろうとしていることかどうかはわかりません。)

于 2012-12-25T20:22:57.323 に答える
1

iOS アプリケーションから Web サイトと通信する方法を探しています。一般的なアプローチは、ユーザーが入力した文字列を取得し、エンコードして、一種のスクリプト (Web サービス) への http 要求として送信することです。このスクリプトは、必要なことをすべて実行します (この文字列で検索します)。次に、結果をクライアント (iOS アプリ) に http 応答として再送信します。これは、iOS アプリで解析されます (たとえば、JSON パーサーを使用)。

例として、これを読むことができる良いリソースがあります:http://www.raywenderlich.com/2965/how-to-write-an-ios-app-that-uses-a-web-service

于 2012-12-25T20:29:28.483 に答える