我想在点击网站上的按钮后尝试调用用C / C ++编写的函数。例如,假设我有一个带有图像和按钮的网站;单击按钮后,我想运行一个可以执行一些过滤的C例程(可能是低通/模糊过滤器),然后使用模糊图像更新图像(最好不重新加载整个网站)。
我的理解是你不能直接在javascript中执行此操作,因为它在客户端运行。我知道你可以用PHP调用C函数,但我的理解是,在加载网站时解析/运行php,然后基本上完成了php(虽然这可能是错误的或不完整的)。
因此,我应该采用什么通用路径将此C函数称为按钮回调,让它在服务器上运行,然后返回并更新图像。如果可能的话,我想坚持使用主要语言,如php,javascript,jquery或AJAX,如果需要等等。
答案 0 :(得分:4)
如果你知道如何从php调用你的c函数,那么你差不多完成了。
“无需重新加载整个网站”意味着使用AJAX。最简单的方法可能是使用JQuery.ajax来执行ajax请求,该请求从服务器获取结果然后将其放入页面。
答案 1 :(得分:3)
Server | Client
---------------------------------------
| Client requests page
/-------------+-------------/
PHP generates a GUI and |
sends HTML/javascript to |
client to tell browser what|
to display |
\-----------------+---------\
| User uses GUI to issue a command
| one that should run a server side action
| an ajax request is sent to inform the server
| of the request
/----------------------+-----------/
Server recuieves an ajax |
request, this tells the |
server to run a command |
The command is run and the |
server returns to the user |
updated data |
\-----------------------+--------------\
| Updated data is recieve by the browser and capture as
| a return on a ajax request. The image is updated as per
| the users expectations.
答案 2 :(得分:0)
如果我需要这样做,我会使用node.js(javascript),并编写一个包含我的C函数的node.js插件,然后通过某种类型的rest API调用它: