【问题标题】:Programmatically purchase from a website in C# or javascript以编程方式从 C# 或 javascript 的网站购买
【发布时间】:2011-08-29 10:52:10
【问题描述】:

大家好,我正在尝试创建一个可以帮助用户从其他网站购买商品的网站。这样做的最佳方法是什么?

我知道我使用的大多数网站都使用 FORM:POST 发送他们的信息,但我在 fiddler 中找不到确切的 POST 数据包(我假设它是加密的?),并且知道很多的网站正在使用登录凭据,所以事情有点复杂。

有什么方法可以使用 webkit 或其他东西来处理所有 http 的东西,并且只需传递 javascript 来填写表格吗?还是有更简单的方法来创建正确的 POST 数据包并使用 WebRequest?

谢谢!

【问题讨论】:

  • 这只是个坏主意。网站一旦更改设置或设计,您的软件就会失败。
  • 您是否打算自行处理用户数据并将其发布到网站上?您符合 PCI 标准吗?这些网站是否使用 SSL?如果是这样,我看不出这种方法可能如何奏效。如果没有,你应该相信他们吗?我会考虑做这样的事情的唯一方法是,如果供应商有一个为此目的而公开的 API。

标签: c# javascript asp.net vb.net


【解决方案1】:

你正走向一个受伤的世界。

首先,您应该检查您尝试做的事情是否合法。该网站是否允许“代理订单”?还是他们的 EULA 禁止它们?

其次,您必须处理用户的机密数据(用户名、密码、信用卡号),尤其是信用卡号正在招惹麻烦。

第三,您打算如何实施 PayPal 等支付方式?您要收集用户的 PayPal 凭据以代表他们付款吗? (如果答案是肯定的,请参阅第二点。)

第四,既然你要伪造HTTP请求,只要网站改变一个字段,你的工具就会坏掉,你打算怎么处理?

或者您只想自动化订单的第一步而不是付款?

【讨论】:

  • 1) 是的,我们已与公司核实并阅读了 EULA。 2) 它将被加密(就像其他网站加密一样),我们的服务器上不会存储任何内容。 3)我们没有实施贝宝,只有信用卡。 4) 会有错误检查和一个团队在必要时更新服务器端的东西。
  • 如果你要发帖,请不要让我处理法律和商业问题。这是一个编程论坛,不是我三年级的公司法课程。
  • 如果你联系了这些公司,看看你能不能做到,你为什么不能简单地问他们你要发布什么?它会让你免于猜测。
  • +1 对 Albireo 所说的一切。还要添加 PCI 合规性。如果你想处理信用卡,你就必须合规。看看这个:pcisecuritystandards.org/documents/pa-dss_v2.pdf
  • 我们不是商家,所以 PCI 不适用。
【解决方案2】:

1) 获得许可
2) 使用他们发布的 API

如果网站没有 API 并且允许您使用他们的服务器进程,请将他们的表单复制到您的网站并使用 post。您可以使用例如 CURL 从您的服务器发布凭据

【讨论】:

  • 这些是较小的网站,没有预算来创建公共 API
  • 你有什么好的CURL教程或例子吗?我只能找到文档,看起来很有前途,但没有太多关于实现的内容。
【解决方案3】:

通常购物车和信用卡交易使用 SSL,您必须登录网站。所以我认为用 javascript 或简单的 webrequest 桥接并不是那么简单。

没有一种标准的简单方法可以做到这一点!

【讨论】:

  • 你会建议如何开始呢?我现在正在尝试使用 fiddler 来查找 POST 数据,并且我正在查看 html 以将所有输入固定在适当的形式中。还有其他想法吗?
猜你喜欢
  • 1970-01-01
  • 2020-09-21
  • 1970-01-01
  • 2019-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-19
  • 2013-06-18
相关资源
最近更新 更多