【问题标题】:Running a compiled C++ program as CGI将已编译的 C++ 程序作为 CGI 运行
【发布时间】:2011-08-05 06:58:31
【问题描述】:

我们将为 iPad 应用添加指纹认证; 由于我们找不到任何适用于 iPad 的实际指纹硬件,我们找到了 DigitalPersona,它是一家出色的指纹扫描仪硬件供应商,以及适用于 Linux C/C++ 的 SDK。这个想法是用户将点击“使用指纹进行身份验证”,这将使用指纹扫描仪向 linux 机器发送一个 RESTful 请求; linux 机器将运行已编译的 C++ 程序,该程序等待用户扫描他们的手指,确定匹配或不匹配,并将响应发送回 iPad 程序的原始请求。

所以... 很少有 C++ 经验,甚至更少 CGI(但有很多 PHP 和 Objective-C),我想知道这在技术上是否可行。通过 HTTP 访问的 CGI 二进制文件实际上是否可以在将结果发送到 HTTP 请求之前等待本地用户输入(在控制台)?

Linux 机器将无头运行,我们将控制一些 LED 以帮助让用户知道程序正在等待指纹扫描。

一些额外的细节: 没有计划使用 PHP。最初,我们需要三个设备: iPad Linux 服务器

iPad 正在运行具有生物特征认证 IBOutlet 的应用程序; Linux 上有指纹扫描仪和一个基本的 Apache;另外还有用于指纹扫描仪的 C++ SDK,我们将使用它来构建 CGI 程序,当(由服务器)调用该程序时,等待指纹扫描,一旦扫描,就会向其发送“匹配”或“不匹配”请求者。 服务器将是请求者。一旦它收到来自 iPad 应用程序的请求,它就会调用 Linux 机器上的 CGI 程序,等待“匹配”或“不匹配”请求。

我团队的另一位成员提供了这个: iPad 正在运行应用程序;用户点击“指纹认证”,iPad 处于“等待”状态 Linux有指纹扫描仪,用户扫描指纹,指纹通过HTTPS发送到服务器 服务器将接收指纹,并将其与用户匹配。然后检查是否有任何 iPad 处于“等待”状态,以及哪个用户启动了它。如果匹配到指纹认证的用户,就会接受iPad的数据作为真实的打卡,并从等待状态中释放iPad。

【问题讨论】:

    标签: linux apache rest cgi biometrics


    【解决方案1】:
    【解决方案2】:

    基本上有两种方法可以做到这一点;你可以让你的 PHP 函数通过exec 调用外部应用程序,或者你可以直接使用RudeCGICgiccfreeCGI 在 C++ 中编写一个外部 CGI。有很多库供您选择。

    【讨论】:

    • 另外,还有 ObjectiveCGI 用于 Objective-C 本身的基本 CGI 应用程序...
    • 酷,但 ObjectiveCGI 类不再可供下载。
    • 我已经给维护者发了一封邮件,也许我们可以把它重新上线。
    【解决方案3】:

    为什么 CGI 需要等待用户输入?您可以在从 Iphone 获取输入并将其发送到 CGI 后调用 CGI...然后您只需从 Iphone 读取 CGI 响应...

    【讨论】:

    • 我认为 CGI 将在 linux 中运行.. 你将从 Ipad 获取输入,然后将该输入传递给 linux...
    猜你喜欢
    • 1970-01-01
    • 2016-02-01
    • 2012-05-03
    • 1970-01-01
    • 1970-01-01
    • 2010-12-29
    • 1970-01-01
    • 1970-01-01
    • 2016-02-14
    相关资源
    最近更新 更多