我有这个代码:
<script type="text/javascript">
var foo = 'bar';
<?php
file_put_contents('foo.txt', ' + foo + ');
?>
var baz = <?php echo 42; ?>;
alert(baz);
</script>
Run Code Online (Sandbox Code Playgroud)
为什么这不会在我的文本文件中写入"bar",但警告"42"?
注意:此问题的早期修订明确是关于服务器上的PHP和客户端上的JavaScript.问题和解决方案的本质是相同的任何对当一个客户端上运行的语言和其他服务器上.当你看到有关特定语言的答案时,请考虑到这一点.
我正在使用socket.io和node.js,直到现在看起来还不错,但我不知道如何从服务器向特定客户端发送消息,如下所示:
client.send(message, receiverSessionId)
Run Code Online (Sandbox Code Playgroud)
但是这些.send()和.broadcast()方法似乎都不能满足我的需要.
我发现作为一种可能的解决方案是,该.broadcast()方法接受一个不发送消息的SessionIds数组作为第二个参数,因此我可以将当前连接的所有SessionId的数组传递给服务器,除了一个我希望发送消息,但我觉得必须有更好的解决方案.
有任何想法吗?
可能重复:
如何决定何时使用Node.js?
对不起,如果我有点模棱两可,但我想了解使用Node.js而不是其他服务器端语言的真正优势.
我是一个JavaScript爱好者,所以我可能会玩Node.js,但我想知道我是否应该在我的项目中使用它.
我正在使用OleDb从包含许多工作表的excel工作簿中读取.
我需要阅读工作表名称,但我需要按照电子表格中定义的顺序进行操作; 所以如果我有一个看起来像这样的文件;
|_____|_____|____|____|____|____|____|____|____|
|_____|_____|____|____|____|____|____|____|____|
|_____|_____|____|____|____|____|____|____|____|
\__GERMANY__/\__UK__/\__IRELAND__/
Run Code Online (Sandbox Code Playgroud)
然后我需要得到字典
1="GERMANY",
2="UK",
3="IRELAND"
Run Code Online (Sandbox Code Playgroud)
我尝试过使用OleDbConnection.GetOleDbSchemaTable(),这给了我名单,但按字母顺序对它们进行排序.字母排序意味着我不知道特定名称对应于哪个表格编号.所以我得到了;
GERMANY, IRELAND, UK
Run Code Online (Sandbox Code Playgroud)
这改变了UK和的顺序IRELAND.
我需要对它进行排序的原因是我必须让用户按名称或索引选择一系列数据; 他们可以要求"从德国到爱尔兰的所有数据"或"从表1到表3的数据".
任何想法将不胜感激.
如果我可以使用办公室互操作课程,这将是直截了当的.不幸的是,我不能,因为互操作类在非交互式环境(如Windows服务和ASP.NET站点)中不能可靠地工作,所以我需要使用OLEDB.
如何在服务器(服务器端)检测浏览器中的cookie是否被禁用?可能吗?
详细说明:我正在服务器上处理HTTP请求.我想通过Set-Cookie标题设置一个cookie .我当时需要知道cookie是由客户端浏览器设置还是我的设置cookie的请求将被忽略.
我需要解析(服务器端)大量的HTML页面.
我们都同意regexp不是这里的方式.
在我看来,javascript是解析HTML页面的本地方式,但该假设依赖于具有javascript在浏览器中具有的所有DOM能力的服务器端代码.
Node.js内置了这种能力吗?
有没有更好的方法解决这个问题,解析服务器端的HTML?
有谁知道调试服务器端代码的好方法?我尝试启用Node.js调试然后使用node-inspector但它没有显示我的任何代码.
我最终使用console.log,但效率非常低.
更新:我发现以下过程适用于我的Linux机器:
当你运行Meteor时,它会产生两个进程
process1:/ usr/lib/meteor/bin/node /usr/lib/meteor/app/meteor/meteor.js
process2:/ usr/lib/meteor/bin/node /home/paul/codes/bbtest_code/bbtest02/.meteor/local/build/main.js --keepalive
你需要在process2上发送kill -s USR1
运行node-inspector,您可以看到您的服务器代码
在我第一次尝试时,我修改/ usr/lib/meteor/bin/meteor中meteor启动脚本的最后一行
exec "$DEV_BUNDLE/bin/node" $NODE_DEBUG "$METEOR" "$@"
Run Code Online (Sandbox Code Playgroud)
并NODE_DEBUG=--debug meteor在命令提示符下运行.这只在process1上放了--debug标志,所以我只在node-inspector上看到meteor文件,但找不到我的代码.
有人可以在Windows和Mac机器上检查这个吗?
我想知道Heroku服务器状态,无法找到有关此主题的任何文档.
例:
Process exited with status 143
Run Code Online (Sandbox Code Playgroud)
谁能解释一下这个例子?我在哪里可以找到资源以供将来参考?
正如你可能知道,制作的Airbnb opensourced Rendr(http://nerds.airbnb.com/weve-open-sourced-rendr)应使服务器端渲染的主干应用程序.这很酷,因为可以在服务器上运行模板渲染的第一次"迭代",并且客户端获得完全呈现的HTML文档以及整个JS应用程序.它大大缩短了显示时间,可以让我们摆脱其他服务器端的模板系统.
那么,有人设法用jsdom或ZombieJS渲染AngularJS吗?在理论上,Node.js上的这些dom /浏览器仿真应该足以用于简单的服务器端角度模板,但我发现谷歌搜索的结果并不是非常确定的.
server-side ×10
node.js ×4
javascript ×3
angularjs ×1
c# ×1
client-side ×1
cookies ×1
debugging ×1
deployment ×1
excel ×1
heroku ×1
html-parsing ×1
http ×1
meteor ×1
oledb ×1
php ×1
rendering ×1
socket.io ×1
templates ×1
websocket ×1