- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 RingoJS 0.8,我在 ringo/httpserver 实例之上创建了一个基本的 jsgi 应用程序。我试图根据规范了解 jsgi 请求对象中每个键的用途:http://wiki.commonjs.org/wiki/JSGI/Level0/A/Draft2 ;我理解了大部分键,保存 scriptName 键。
当我运行我的应用程序并打印每个键的值时,scriptName 总是返回一个空字符串,而 pathInfo 返回 URL 的路径名。我试图了解 scriptName 实际上应该传达什么以及它与 pathInfo 有何不同。
最佳答案
scriptName
和 pathInfo
在考虑 CGI 的历史背景时最好理解,因为这就是这些字段的来源。
使用CGI 脚本,您有一个服务器端目录结构,其中在某个位置包含一个CGI 脚本。对于 CGI,Web 服务器的工作是将 HTTP 请求中的 URL 映射到 CGI 脚本。现在这个映射过程基本上将 URL 中的路径拆分为组件,然后尝试(从根目录开始)将每个组件映射到目录名或文件名。一旦组件与文件名匹配,就会找到要执行的 CGI 脚本。导致文件名并包括文件名的所有 URL 路径组件随后作为“脚本名称”传递给 CGI,其余(不匹配的)URL 路径组件作为“路径信息”传递给 CGI 脚本。
让我们用一个例子来说明这个抽象的描述。假设您的文件系统中存储了一个 CGI 脚本,位于 /x/y/foo/bar.cgi
,其中 /x/y/
是您使用的根目录将请求映射到的网络服务器。如果请求到达 URL /foo/bar.cgi/baz/qux
,网络服务器会将此请求与 /x/y/foo/bar.cgi
匹配> CGI 脚本,将 /foo/bar.cgi
作为“脚本名称”传递,将剩余的 /baz/qux
作为“路径信息”传递给此 CGI 脚本。
但是,在 JSGI 中,如何将 URL 映射到 JSGI 应用程序基本上取决于服务器和潜在的中间件。 可能有一个基于模拟文件系统的查找机制在起作用,其中将原始请求的路径拆分为“脚本名称”和“路径信息”仍然有意义。或者可能没有。
如果您在 Ringo 的裸机 ringo/httpserver
上运行,则根本不会进行任何脚本名称映射,因为您的应用程序始终被视为在根目录下运行(即对应于 /
网址路径)。如果您的主应用委托(delegate)给其他 JSGI 应用,则由您决定(并记录)是否以及如何设置 scriptName
和 pathInfo
。
关于javascript - JSGI/Level0/A/Draft2中的scriptName和pathInfo有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7080581/
在 Gmail API 中,drafts.list 经常会返回草稿 ID但是当我将它传递给 drafts.get 时,它会返回 404 错误。这是对于某些草稿 ID 可重复,我可以再次调用 draft
我正在尝试将调用组件中的文本更新到编辑器组件中。我使用 props 来传递来自调用者的文本,但是当文本更改时(在 ContentEditor 中更新了 props),Editor 组件中的文本不是:
我正在使用 MFMailComposeViewController Controller ,如下所示: MFMailComposeViewController *picker1 = [[MFMailC
如果我想处理字符*的输入,我可以使用handleBeforeInput(str): handleBeforeInput(str) { if (str !== '*') { retu
使用下面的代码我得到纯文本但我想要格式化文本点击按钮 {alert(this.state.editorState.getCurrentContent().getPlainText());}} typ
如何添加链接?我知道如何添加链接到 选择 const contentState = editorState.getCurrentContent();
我的draft.js 填充 body带有文本,例如:'{"blocks":[{"key":"3mont","text":"lorem ipsum","type":"unstyled","depth":
我在我的应用程序中使用基于草稿js的react-draft-wysiwyg文本编辑器。我在尝试通过编辑器图像控件上传图像时遇到一些问题。我正在使用自定义 FileUploader 组件。它将图像保存在
我有一个由 Draft.js 提供的编辑器的包装器,我想让 tab/shift-tab 键像它们应该用于 UL 和 OL 一样工作。我定义了以下方法: _onChange(editorState)
我关注了draft-js document创建一个非常简单的 Draft-js 演示。 一切似乎都运行良好,但是当我在 Chrome 中打开网址时,我只能看到一个白色的空白页面(那里有一个隐藏的编辑器
如何测试draftjs的内容编辑器为空? 我现在唯一的想法是与从此函数返回的对象进行对象比较:EditorState.createEmpty().getCurrentContent() 最佳答案 只需
我有一个简单的用例:有一个 DraftEditor 组件,它采用 value作为它的 Prop 并基于value创建一个编辑器状态(空的或有内容的)。 value 可能被父级更改,当它发生时,我希望草
我尝试根据主 draft.js 页面上的示例创建基本草稿 js 编辑器 https://draftjs.org/ . 当我在主页面的编辑器中单击切换了 ol/ul 的选项卡时,我得到了嵌套列表。但是在
我有一个需要多个文本输入的应用程序,为了格式化和自定义,我选择了 draft-js 作为我的编辑器,但是我遇到了一个非常令人困惑的输入问题。 当我在编辑器中输入时,我最近按下的键被打印在编辑器的开头,
问题是:如何将 draft-js 内容保存为 html,然后在页面上呈现内容(此时是 html 字符串)。 我想分享我学到的东西。 请在解决方案中找到一种使用 draft.js 保存和呈现内容的方法。
我正在做一个 React 项目,我们将在其中使用大量表单,包括具有丰富 HTML 的字段。我搜索了一会儿,偶然发现了 draft-js。看起来很好,但是我似乎找不到任何从头到尾如何使用它的好例子。我发
如何确保我的 UI 上唯一的 draft-js 文本框在页面加载时自动聚焦? 有一个记录的方法叫做 focus ,但是我不确定实现所需的语法。 最佳答案 如果您的编辑器是用一些默认值启动的,那么只需执
试图学习如何在我自己的应用程序中使用 DraftJS React 组件,但我遇到了一个大问题。我已经按照位于 here. 的示例进行操作 我使用 create-react-app 获取基础样板文件,我
我在一个项目中将 Draft JS 作为一个简单的编辑器实现了,但是我在设置无序列表的样式时遇到了问题,特别是更改项目符号的颜色以匹配文本颜色。 文档中似乎没有关于如何将样式应用于包装 unorder
我正在尝试将 Draft.js 与图像插件一起使用。这是我的问题。我设法让它工作,但没有加载样式,编辑器占据了整个页面,按钮没有样式。 我从提供的 CSS 加载样式 import './Draft.c
我是一名优秀的程序员,十分优秀!