从jade内部获取用户代理

2023-11-24

我正在尝试将我为groovy编写的脚本移植到jade,但遇到了绊脚石

我需要从玉文件内部访问用户代理。这是我到目前为止所尝试过的:

 - var agent = req.headers['user-agent'];
 - var agent = headers['user-agent'];
 - var agent = navigator.userAgent;

每次我收到 Express 的 500 错误。这可能吗?

我知道我可以在模块中执行此操作并将其传递给渲染语句,但这意味着将其传递给每个渲染,因为它需要是全局的。

对节点非常陌生,并且很困惑。谢谢所以。


只需编写自己的小型中间件

app.use(function(req, res, next) {
  res.locals.ua = req.get('User-Agent');
  next();
});

把这个放在你的之前app.router

app.configure(function(){
  app.set('port', process.env.PORT || 3000);
  app.set('views', __dirname + '/views');
  app.set('view engine', 'jade');
  app.use(express.favicon());
  app.use(express.logger('dev'));
  app.use(express.bodyParser());
  app.use(express.methodOverride());

  // here
  app.use(function(req, res, next) {
    res.locals.ua = req.get('User-Agent');
    next();
  });

  app.use(app.router);
  app.use(express.static(path.join(__dirname, 'public')));
});

然后您可以使用ua任意变量jade模板(例如index.jade)

extends layout

block content
  h1= title
  p Welcome to #{title}
  p=ua
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从jade内部获取用户代理 的相关文章

  • 使用主管在调试中运行 Node.js 应用程序

    我在用导师 https www npmjs com package supervisor自动重新加载我的node js 例如 supervisor w app js 但是我不知道如何让主管在调试中运行node js 进程 例如相当于 nod
  • Node.js 进程内存不足错误

    FATAL ERROR CALL AND RETRY 2 Allocation Failed process out of memory 我看到这个错误 但不太确定它来自哪里 我正在从事的项目有以下基本工作流程 从其他来源接收 XML 帖子
  • Nodejs 上使用 DNS 进行 Consul 服务发现

    TL DR 大家好 我试图从用 Express 编写的 NodeJS 前端调用 NodeJS 后端微服务 通过Consul https www consul io DNS接口 https www consul io intro gettin
  • 在jsDom中设置窗口宽度?

    应该是一个简单的问题 如何设置 jsDom 对象的宽度 jsdom env url http testdatalocation scripts http code jquery com jquery js done function err
  • NodeJS 中的 uglify-js“找不到模块”

    在这里我正在创建应用程序来压缩 javascript 文件 我所做的步骤 在我的本地机器上安装了nodeJS 检查节点和 npm 正在工作 通过 npm install uglify js g 安装 uglify js 并安装 当我尝试在命
  • 在 Javascript 中缓存和预取过期的 Promise

    Promise 是我在 Javascript 中管理异步代码的首选方式 Memoize npm 上的 memoizee 是一个 Javascript 库 用于轻松缓存和预取函数结果 理想情况下 我想结合两者的优点 并且能够使 Promise
  • Electron 包 - 如何写入/读取文件

    我有文件test txt在我的应用程序根目录中 当我使用命令运行我的应用程序时npm start 我可以毫无问题地写入我的文件 但是当我使用电子打包器制作包时 不再可能将文本写入我的文件 我收到错误 Error EACCES permiss
  • Express.js“app.use()需要中间件功能”

    我正在学习 Express js 4 和 Node 但遇到了一个我无法弄清楚的错误 我正在尝试使用 node sass 包来编译我的 sass 代码 但我无法启动并运行它 这是我的主文件的精简版本 var express require e
  • Mongoose - 遍历对象

    在 node js 上使用 mongoose 我试图找到玩家 game players id 等于我传递的 id 的所有游戏 Schema var Game mongoose Schema id String date type Date
  • 从在不同端口运行的 Vue 应用程序调用 Node Express 服务器 API

    我最近开始学习 vue js 并且目前使用 vue jsvue 简单 webpack https github com vuejs templates webpack simpletemplate express 和 mongo 来开发一个
  • (如何)我应该销毁 uv_async_t 吗?

    当我完成后uv async t 我应该销毁它以避免任何泄漏 对吗 从浏览文档来看 我似乎应该使用uv close 为此 但需要uv handle t not a uv async t 此外 它看起来像是铸造它 如uv close uv ha
  • 如何在电子中使用 import 或 require

    我正在尝试构建一个电子应用程序 我想从另一个js文件导入一些函数 但是在使用导入时我收到错误显示 不能在模块外部使用 import 语句 为什么会发生这种情况 我的代码是 eventsource js import sample from
  • ES6 的 Visual Studio 任务运行程序错误

    我正在运行 Visual Studio 2017 并使用任务运行程序在我的gulpfile 我最近将 gulp 任务更新到 ES6 现在收到此错误 Failed to run C Users nz9rcn Code WebUI Gulpfi
  • 如何避免阻塞node.js中的主线程?

    当使用 Node js 编写 Web 服务器应用程序时 永远不要阻塞主线程当然非常重要 但是 如果服务器请求需要进行需要一些时间才能完成的计算怎么办 会做一个 setTimeout myCalculationFunc 0 是保持服务器响应其
  • 如何使用npm安装本地网络中的所有节点模块?

    我的节点应用程序将部署在无法访问互联网的银行中 我可以将所有节点模块下载到本地目录中并从中安装它们 还是将node modules复制到银行机器上 任何安全实用的建议将不胜感激 谢谢 OR 如何添加node modules不使用依赖项int
  • express.js 示例应用程序[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在启动一个express js 项目 我想查看现有大型应用程序的代码 尤其是它们的文件系统结构 有
  • Mongoose 选择要从 findOneAndUpdate 返回的字段

    在 Nodejs 中使用 Mongoose 您可以使用 find 返回一些字段 例如 User findOne id 132324 first name 1 last name 1 exec 但我似乎无法弄清楚如何使用 findOneAnd
  • 为什么只有 50 个实例在 AWS lambda 上运行?

    我在用context logStreamName识别 lambda 实例 并发设置为无保留 但日志显示只有 50 个实例正在运行 我是否误解了logStream pre logStream pre实例 我从那里得到的信息这个博客 https
  • 如何在 Plesk Obsidian 上为 Node.js 管理器添加新的 NodeJS 版本?

    Since Plesk 黑曜石 v18 x 它不像以下程序那样工作这个答案 Plesk Onyx https stackoverflow com a 46846077 10824494现在我无法添加新版本的 NodeJS plesk sbi
  • 在 ng 服务命令上找不到构建器 @angular-devkit/build-angular:dev-server 的实现[重复]

    这个问题在这里已经有答案了 我尝试更新以下 Angular CLIthis https www npmjs com package angular cli updating angular cli 但现在我无法运行我的应用程序 当我尝试运行

随机推荐

  • 更新 iframe、历史记录和 URL。然后使其与后退按钮一起使用

    当点击浏览器上的后退按钮时 我在更新 URL 时遇到问题 我正在 Firefox 上进行测试 更新我使用的 iframe 的 src 属性后replaceState更新历史记录 如果我在此之后点击后退按钮 iframe 将返回到上一页 但
  • opencart php自定义页面不使用“信息”功能

    我想在 opencart 中创建一个自定义页面 我知道我可以使用管理区域在信息部分放置一个自定义页面 但是我想要的是一个指向其他几个页面的控制器 我不完全明白如何做到这一点 在 codeigniter 中 您将创建一个控制器和一个视图 如果
  • Python:更改 Windows 7 主音量

    我希望能够在 Python 中控制主音量 不是针对应用程序 而是针对当前活动扬声器 这似乎是一个棘手的话题 我尝试用 C 来做 但我什至无法让它在那里工作 有办法做到这一点吗 Windows 7 x64 请注意 这个问题之前没有得到回答 因
  • Camera2 API 自动对焦与三星 S5

    我正在 Samsung S5 上使用新的 Camera2 API 该设备报告的支持的硬件级别是LEGACY 这很好 但是 我似乎无法自动对焦该设备 触发自动对焦的请求如下所示 previewRequestBuilder set Captur
  • 拒绝使用ajax调用Rest服务器设置不安全标头“Cookie”

    我正忙于构建一个与我的 Drupal Rest 服务器 模块 服务 连接的 Phonegap 应用程序 我的 Drupal 网站 PHP 的代码为 header Access Control Allow Origin 当我尝试使用以下代码连
  • cxf + wss4j + maven NoSuchMethod 错误

    尝试使用maven使用cxf wss4j 创建服务和客户端 没有任何编译问题 该服务在tomcat中运行良好 Issue 当我运行客户端代码时 我得到 java lang NoSuchMethodError org apache xml s
  • Apache Oltu Linkedin 集成示例

    我期待着开发Spring MVC Apache Oltu Linkedin集成示例 在此示例中 您需要发送客户端 ID 和客户端密钥才能从链接站点访问私有资源 第一步 我们需要在 Linkedin 中创建应用程序 请按照以下步骤操作 htt
  • laravel“解析错误:语法错误,意外的'const'(T_CONST),期望变量(T_VARIABLE)”

    我将我的 laravel 项目从本地移动到共享主机 但 laravel 给出了这个错误 Parse error syntax error unexpected const T CONST expecting variable T VARIA
  • 如何在 Laravel 4 中创建自定义 Facade

    查找了一些关于 Facades 和 Laravel 4 的教程 尝试了一些 不喜欢它们的工作方式 例如 它们并不都提供一种定义在哪里存储外观文件和服务提供者的方法 我试图摆脱这一点 但我的头撞到了几堵墙 直到我决定做这个线程 所以 假设我有
  • WinSCP .NET 程序集:在哪里定义代理?

    我可以使用 WinSCP GUI 定义代理服务器 如果我这样做 我就可以连接到远程主机 但在代码中我没有找到为 WinSCP 声明代理服务器的方法 在这种情况下我收到 远程服务器返回错误 407 需要代理身份验证 My code Sessi
  • 将 csv 文件转换为 PHP 二维数组

    我是 PHP 新手 一直在努力将 CSV 文件读入二维数组 我使用以下文件 csv team csv ID Nickname Shirtnumber Position 1 Jimmy 0 RightBack 2 Mark 3 CentreB
  • Hibernate/JPA - 访问 SingularAttribute 参数时出现 NullPointerException

    我正在尝试将 JPA2 类型安全标准查询与 Hibernate 5 0 7 Final 一起使用 criteria where builder equal root get SingularAttribute attr value wher
  • 如果没有指定目标,“make”应用程序如何知道要构建的默认目标?

    大多数 Linux 应用程序都是通过以下方式编译的 make make install clean 据我了解 make命令将构建目标的名称作为参数 例如install通常是将一些文件复制到标准位置的目标 并且clean是删除临时文件的目标
  • 在表单中搜索具有多个字段的 MySQL 数据库

    我创建了一个表单 用户可以在其中搜索数据库 结果取决于用户如何填写表单 例如 假设我有姓名 地 址 城市 州和邮政编码字段 并且用户填写了姓名和城市字段 结果会反映输入 当表单提交时 所有记录都会显示 为此我写了这个 if isset PO
  • JAVA:正确访问静态方法

    我是JAVA新手 我喜欢尝试并理解一切 在JAVA中访问静态方法 hero returnHp 时 我有以下内容 hero Mike new hero Mike returnHp 程序运行良好 但我注意到 Eclipse 有一条警告 指出 英
  • 如何在java中在windows和IANA时区之间进行转换

    我需要在 IANA 时区和 Windows 时区之间进行转换 反之亦然 还有一个问题被报道 如何在 Windows 时区和 IANA 时区之间进行转换 它指定Noda时间库可以在 Net中使用 我们有可以在 Java 中使用的库吗 或者ja
  • vim 中的条件正则表达式?

    是否可以执行条件正则表达式 就像中描述的那样 http www regular expressions info conditional html 在 Vim 中 Vim 正则表达式没有此功能 因此您需要使用一些重复来创建相同的行为 con
  • iPhone 本地化 - 获取手机的语言代码?

    我正在将我的 iPhone 应用程序本地化为多种语言 除了更改一些字符串之外 我还需要更改一些背景 是否可以查询iPhone并获取用户的语言代码 Thanks 看看 NSLocale NSString language NSLocale c
  • iOS 自动布局 - 如何设置视图之间的两个不同距离,取决于屏幕高度

    我知道我错过了一些东西 因为这必须是很容易实现的东西 我的问题是 我的 加载屏幕 启动后立即出现的屏幕 中有一个 UIImageView 其中包含 3 5 英寸和 4 英寸尺寸屏幕的两个不同图像 在该图像的某个位置 我放置了一个 UIAct
  • 从jade内部获取用户代理

    我正在尝试将我为groovy编写的脚本移植到jade 但遇到了绊脚石 我需要从玉文件内部访问用户代理 这是我到目前为止所尝试过的 var agent req headers user agent var agent headers user