首页 > 解决方案 > 停车支付逻辑

问题描述

我想创建一个应用程序来更快地支付停车费。

这个问题更多的是关于我的应用程序的逻辑,以及我需要使用哪些工具来创建它。

在这一点上,我每天使用一个停车位,并通过网页付费。

我这样做。

  1. 登录页面。
  2. 点击菜单,它会将我重定向到 www.parkingexample.page/payments
  3. 有一个搜索菜单,如果找到我的车,我输入我的车牌号,它会返回我需要支付的金额,然后出现“支付”按钮。
  4. 我点击“支付”按钮,然后一切都完成了。

所以我的目标是创建一个应用程序,当我启动时它会自动连接到页面并搜索我的车牌,如果找到并需要付款,那么只有一个按钮“支付”

所以我认为我应该这样做,但由于我还没有创建任何网络应用程序(我是 100% 的后端开发人员),所以我问你我的思考过程是否正确。

而且我也不想使用WebView,因为我认为这对我来说没有必要。

  1. 当我启动我的应用程序时,它会向页面发送“POST”请求以登录。
  2. 然后我用 params = 'mycarspaltenumber' 向 www.parkingexample.page/payments 发送“GET”请求
  3. 不知何故,当它出现时,我需要点击页面上的 PAY 按钮,所以我认为它可能又是“POST”请求,但在这一点上,我不确定。

所以一个问题是,我的逻辑有效吗?还是可以通过其他方式完成?

更新。添加的屏幕截图

  1. 第一个屏幕截图 这是我使用搜索栏登录后的菜单,我需要在其中输入我的卡牌。

在此处输入图像描述

  1. 第二个屏幕是我找到我的车的地方(输入车牌号并点击搜索),现在页面更新为我必须支付的金额,右下角有一个“PAID”按钮我需要点击。这就是我所需要的。

在此处输入图像描述

标签: react-native

解决方案


为了验证您建议的顺序是否正确,我将从使用Fiddler 之类的工具捕获您与停车提供商之间的典型浏览器会话开始。然后我将使用选择的 HTTP 客户端库(对于 C#,它类似于HttpClient)并使用正确的标头、查询参数等模拟相同的流程。

查看您的屏幕截图,该应用程序似乎是ASP.NET Web Forms,由于其状态管理的工作方式,模拟它可能会有些痛苦:您可能需要解码View 状态对象(以确保您正确地将其传递回来) 并找到它用于回发的所有动态字段 ID 。然而,这是非常可行的。

如果您发现上面的内容太难以模拟(或者涉及到 javascript),那么探索Remote Selenium WebDriver以及像PhantomJS这样的无头浏览器可能会更容易。然后,您将让您的 PhantomJS 与服务器上的页面进行交互,然后您将使用您的移动应用程序来驱动它。基本上,您可以将停车提供商页面的复杂性降低到一个有据可查的 API。

希望这能给你一个起点


推荐阅读