iOS结帐网站

时间:2012-06-13 16:06:46

标签: iphone ios ios5 checkout uiweb

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

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

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

1 个答案:

答案 0 :(得分:1)

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

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

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

然后,您需要将numTickets和date发布到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];