0

我正在构建一个在线销售门票的网站的 iPhone 应用程序版本。我正在尝试在不使用 UIWebView 的情况下在 iOS 上重新实现结帐流程,传递一些变量(票数、日期等),并且只执行最终的 HTTP 请求来处理付款。

问题是我不知道进行最终购买的请求的结构。我应该怎么做才能对此进行逆向工程?

更重要的是,有没有更好的方法来修改 iPhone 屏幕的网络结帐流程?

4

1 回答 1

1

访问这个售票网站的网站,在实际付款之前一直到最后一个屏幕。然后,查看 HTML 中的所有输入,并使用该数据发送请求。如果 jQuery 在他们的网页上,那真的很容易。打开开发人员工具,转到可以输入命令的控制台,只需输入$('input, textarea'),它就会显示所有命令的列表。

例如,如果页面有这样的表单。

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

然后,您需要将 numTickets 和日期发布到 makepayment.php 页面。

这是您需要在 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 回答