小编rod*_*ehm的帖子

用PHP创建Web服务器(不带Apache)

我刚试过这段代码:

<?php
set_time_limit(0);

$address = '176.9.117.136';
$port = 9000;

$sock = socket_create(AF_INET, SOCK_STREAM, 0);
socket_bind($sock, $address, $port) or die('Could not bind to address');

while(1)
{
    socket_listen($sock);
    $client = socket_accept($sock);

    $input = socket_read($client, 1024);
    echo $input;

    $output = 'URL: http://ip-of-my-server:9000/
HTTP/1.1 200 OK
Date: Tue, 10 Jul 2012 16:58:23 GMT
Server: TestServer/1.0.0 (PHPServ)
Last-Modified: Fri, 06 Jul 2012 14:29:58 GMT
ETag: "13c008e-1b9-4c42a193de580"
Accept-Ranges: bytes
Content-Length: 441
Vary: Accept-Encoding
Content-Type: text/html

';
    socket_write($client, $output);

    socket_close($client);
}

socket_close($sock);
?>
Run Code Online (Sandbox Code Playgroud)

但有一个问题.Apache没有使用$ output的内容作为标题,而是返回自己的标题...

我不知道为什么,因为我通过这个命令执行脚本:php …

php sockets apache webserver http

11
推荐指数
1
解决办法
1万
查看次数

URL管理工具?

是否有(本机)JavaScript API为自定义URL提供window.location的"功能"?一些东西

var url = new URL("http://stackoverflow.com/question?hello=world#foo");
console.log(url.hostname, url.path);
// out: "stackoverflow.com", "/question"
url.hash = "bar";
url.query = "";
console.log(url);
// out: "http://stackoverflow.com/question#bar"
Run Code Online (Sandbox Code Playgroud)

我相当确定没有本地API(出于什么原因).如果有人实现了此功能,请分享链接.

javascript

5
推荐指数
1
解决办法
658
查看次数

如何处理WAI ARIA role ="listbox"

我有一个选项列表,可以从中选择一个.出于所有意图和目的,HTML的<select>元素涵盖了这一点.由于我们需要不同的视觉呈现,我正在考虑使用WAI ARIA role ="listbox".我不清楚如何使用aria-activedescendant,aria-selectedaria-checked.

关于焦点/活动状态的问题:

  • 如果我aria-activedescendant在列表框上使用指向[role="option"]当前处于活动状态(具有"虚拟焦点"),我会使用[aria-selected].我怎么能告诉选项元素本身它是活动的(具有"虚拟焦点")来直观地表示它?(:focus毕竟是在列表框上)
  • 一个[role="option"]可以拥有[aria-checked][aria-selected].我想我需要[aria-selected]但却看不到我用[aria-checked]的东西.
  • 是否有一个技巧,以避免必须在每个选项上放置ID,以便它可以被引用aria-activedescendant

有关键盘交互的问题:

  • "复选框 - 空格切换复选框,如果列表项是可检查的" - 我如何确定它们是否可检查或可选择?

有关验证的问题:

如果列表框具有[aria-required="true"]某种必须执行的验证.特别是如果选择(或选中)了一个选项.

  • 我何时触发验证?是blur足够了吗?
  • 如果无效,除了[aria-invalid="true"]在列表框上设置外,我还需要做什么?

accessibility wai-aria

5
推荐指数
1
解决办法
3723
查看次数

Javascript FileAPI:迭代目录?

Firefox 3.6 让您将目录拖放到某个元素上(使用拖放 API)并使用 FileAPI 处理这些文件。它如何与目录一起使用?

\n\n

Mac OS X Finder 将某些目录显示为文件(.app、.tmbundle、.abbu、\xe2\x80\xa6)。在大多数情况下,这很棒。在通过 File- 和 DND-API 与浏览器交互的情况下,情况并非如此。最终用户无法区分真实文件和类似 my-addressbook-backup.abbu 的文件。

\n\n

因此,Javascript UI 必须能够识别目录结构。如果它无法遍历该结构,则必须相应地通知用户。

\n\n

关于如何实现其中任何一个的想法?

\n\n

编辑:

\n\n

我可以看到允许 JS 遍历目录时出现的(潜在的)问题。我本身并不要求进行目录遍历(尽管我不会要求能够这样做)。我说的是 Foo.app 被视为一个文件(如用户通过 Finder.app 看到的那样),但实际上是一个目录(如在 Terminal.app 中查看它时看到的那样)。

\n\n

文件 API 目前不提供任何遍历机制。因此,addressbook-dump.abbu 中更深层次的嵌套文件将无法访问。有什么想法可以让这一切成为可能吗?

\n\n

否则我必须告诉我的 OSX 用户将他们的地址簿文件存档(例如 ZIP)并“上传”该 zip(我实际上可以在 JS 中读取)。尽管这是一种解决方法,而不是解决方案。

\n

javascript drag-and-drop fileapi

4
推荐指数
1
解决办法
7585
查看次数

DalekJS:Firefox浏览器打开,测试不运行

当我尝试在Firefox中运行Dalek测试时,Firefox浏览器只会打开,但不会运行任何测试.还有其他人碰到这个吗?相同的测试在Chrome和PhantomJS中运行良好.

我的测试非常基础:

dalektest.js

module.exports = {
    "Page title is correct": function(test){
         test.open("http://localhost:8080")
         .assert.title().is("Title", "it has title")
         .done()
    }
}
Run Code Online (Sandbox Code Playgroud)

的package.json

{ 
   "name": "Dalek-Tests",
   "version": "0.1.0",
   "devDependencies": {
       "dalek-browser-chrome": "0.0.1",
       "dalek-browser-firefox": "0.0.1",
       "dalekjs": "0.0.1"
   }
}
Run Code Online (Sandbox Code Playgroud)

Dalekfile.json

{
    "browsers": [{
         "firefox": {
            "path": "/Applications/FirefoxAurora.app"
         }
     }]
}
Run Code Online (Sandbox Code Playgroud)

我将所有这些文件放在同一个文件夹中,并尝试使用以下命令运行:

dalek dalektest.js -b firefox
dalek dalektest.js -b chrome
dalek dalektest.js -b phantomjs
Run Code Online (Sandbox Code Playgroud)

其他人工作正常,但Firefox只是打开Firefox,之后没有任何事情发生.

我在Max OS X Lion上.Firefox Aurora是24.0a2(2013-08-04)

由于是新手,无法用'dalekjs'正确标记这个...

javascript functional-testing phantomjs dalekjs

2
推荐指数
1
解决办法
934
查看次数

如何从jquery哈希中获取多个值

如何在jquery哈希中获得多个值?

例:

http://mysite.com/#l:value&v:id1212相同但没有页面刷新http://mysite.com/?l=value&v=id1212

我想的是:

var hash = location.hash.replace(/^.*?#/, '');

var lVal = (/^l:/.test( hash ));
var vVal = (/^v:/.test( hash ));
Run Code Online (Sandbox Code Playgroud)

但我怎么能解决var lVal只读取直到&符号?我正朝着正确的方向前进吗?

javascript url fragment-identifier

1
推荐指数
1
解决办法
5697
查看次数