0

我不得不接手一个项目,其中有人退出并需要帮助了解一种网关的工作方式。如果我知道使用了什么网关会很容易,但不幸的是我们不知道计划是什么。

有人可以帮我弄清楚这实际上是如何与网关通信的吗?在我看来,代码正在向自己发送请求??这是否意味着服务器已配置为处理网关请求?对于其他网关,比如贝宝,我习惯于直接向他们的服务器发送 HTTP 请求。

是否存在驻留在主机上的网关类型?这里真是一头雾水。

$payClientIP = "127.0.0.1";
$payClientPort = "9050";
$payClientSocket = -1;
$payClientTimeout = 5;

$payClientSocket = fsockopen($payClientIP, $payClientPort, $errno, $errstr, $payClientTimeout);        

function sendCommand($payClientSocket, $command) {

            global $payClientTimeout;
            socket_set_timeout($payClientSocket, $payClientTimeout);

            $buf = $command . "\n";
            $response = fputs($payClientSocket, $buf) == strlen($buf);    


        }

 sendCommand($payClientSocket, "7,CardSecurityCode,$cscValue");
 sendCommand($payClientSocket, "7,CardNum,$cardNumber");
 sendCommand($payClientSocket, "7,CardExp,$cardExpiry");
 sendCommand($payClientSocket,"6,$orderInfo,$merchantID,$amount,$locale");

我试图找到的是物理发送请求的命令,但我找不到。该代码实际上有效并借记卡。

4

2 回答 2

1

本地机器上的端口 9050 上正在运行某些东西。仅凭您提供的信息,很难弄清楚这是做什么的。它可能是一个网关,也可能只是某种将请求传递到某个远程网关的日志代理。

于 2010-01-04T21:09:24.750 回答
1

您可能应该检查在本地计算机上使用侦听器运行的服务应用程序,该侦听器实际上在幕后进行实际工作。我的团队曾经使用过一个特定的应用程序,它需要类似的设置,我们引入了一个 Web 服务,该服务可以将信用信息发送给供应商的服务。

但是,如果服务托管在与调用网页相同的机器上,我看不到这种设置的优势。

于 2010-01-04T21:09:26.060 回答