【问题标题】:Is it possible access php variables from dart?是否可以从飞镖访问 php 变量?
【发布时间】:2012-11-20 07:51:46
【问题描述】:

编辑:PHP 和 Dart 脚本将在客户端运行。

我将在我的页面加载时运行一个 php 脚本。然后我想访问 dart 范围内的 php 函数。是否有可能或者我应该将所有内容迁移到飞镖?

更具体的;

  • 我正在开发一个 facebook 应用程序(使用 facebook php sdk),
  • 我已经写了几篇“你好,世界!”网络应用,
  • 这就是我目前获得的所有经验。

提前致谢。

【问题讨论】:

  • 亲爱的先生/女士,请问-1的原因。所以,我可以解决这个问题。
  • 你想在服务器端还是客户端使用飞镖?
  • 客户端。我将此信息附加到问题中,我的错误

标签: php html facebook facebook-php-sdk dart


【解决方案1】:

。 Dart 和 PHP 之间没有干净的通信方式。使用客户端 Dart,您会遇到客户端脚本与服务器端脚本的正常问题。使用服务器端 Dart,据我所知(用 google 研究),两者之间没有互操作性。

客户端与服务器端脚本

在 Web 开发中,主要有两类编程语言:服务器端和客户端。服务器端语言在 Web 服务器上运行,并确定 Web 服务器为回复 HTTP 请求而发送的响应。客户端语言在客户端(读取、浏览器)上运行并在浏览器中操作 DOM 等。

从客户端代码调用服务器端代码就像从没有 ssh 的计算机上在您朋友的计算机上运行命令一样。从客户端语言 (function my_client_func() { my_server_func(); }) 直接调用服务器端函数是不可能的。

解决方法

有多种方法可以实现此功能。两个是 AJAX 和 WebSockets。

AJAX 允许您异步发出 HTTP 请求并在数据到达时对其进行操作。您可以创建一种机制,通过特殊网页或类似的方式从服务器检索数据。您可以创建一个名为facebook.com/apps/yourapp/function.php 的页面并使用name=myFuncitonName&var1=something&var2=else 等参数调用它(function.php?name=myFunction...)。

WebSockets 允许您创建全双工 TCP 样式。您可以创建一个 PHP WebSocket 服务器,它会根据收到的 WebSocket 消息调用函数,但这可能会造成安全漏洞。

服务器端语言互操作性

某些服务器端语言提供与其他此类语言互操作的机制。 Dart 似乎没有提供调用 PHP 代码的机制。

解决方法

Dart 确实提供了一种以 Process 类的形式运行进程的机制。您可以使用 Process 类来调用 PHP 解释器。

Dart 确实提供了与 C 的互操作性。使用 Native Extensions,Dart 代码可以调用 C 函数。基于this问题,C代码可以调用PHP函数。

【讨论】:

  • 谢谢,我想可能会像“... ...”。我的目标是将所有负载转移到客户端。我想,我必须试试你的解决方案。
  • @GökhanBarışAker 这可以工作,但它会变得混乱并且是一种解决方法。我在最后添加了更多信息。
  • 为了澄清,Dart 可以在服务器端和客户端工作。
  • @scribeGriff 我添加了关于 Dart/PHP 服务器端互操作的信息。
猜你喜欢
  • 2021-11-12
  • 2022-01-04
  • 1970-01-01
  • 2021-12-18
  • 1970-01-01
  • 2011-01-25
  • 1970-01-01
  • 1970-01-01
  • 2019-07-28
相关资源
最近更新 更多