0

チケットをオンラインで販売するウェブサイトのiPhoneアプリバージョンを作成しています。UIWebViewを使用せずに、iOSでチェックアウトプロセスを再実装しようとしています。いくつかの変数(チケットの数、日付など)を渡し、支払いを処理するために最後のHTTPリクエストを実行するだけです。

問題は、最終的な購入を行うリクエストの構造がわからないことです。これをリバースエンジニアリングするにはどうすればよいですか?

さらに重要なことに、iPhone画面のWebチェックアウトプロセスを変更するためのより良い方法はありますか?

4

1 に答える 1

1

このチケット販売ウェブサイトにアクセスし、実際に支払いが行われる前に最終画面まで進んでください。次に、そこにあるHTMLのすべての入力を確認し、そのデータを使用してリクエストを送信します。jQueryが彼らのウェブページにあるなら、それは本当に簡単です。開発ツールを開き、コマンドを入力できるコンソールに移動し、入力するだけ$('input, textarea')で、すべてのコマンドのリストが表示されます。

たとえば、ページに次のようなフォームがあるとします。

<form method="post" action="makepayment.php">
    <input name="numTickets" />
    <input name="date" />
</form>

次に、numTicketsと日付をmakepayment.phpページにPOSTする必要があります。

これは、HTTPリクエストで送信する必要のあるデータです。ここで読むことができる素晴らしいライブラリがあります:http://allseeing-i.com/ASIHTTPRequest/。これにより、次のようなことができます。

NSURL *url = [NSURL URLWithString:@"https://ticketsellers.com/makepayment.php"];
ASIFormDataRequest *request = [[[ASIFormDataRequest alloc] initWithURL:url] autorelease];
[request setPostValue:@"2" forKey:@"numTickets"];
[request setPostValue:@"12/31/2012" forKey:@"date"];
[request startSynchronous];
于 2012-06-13T16:44:01.183 に答える