问题标签 [vibed]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
d - Vibe.D - 未定义的标识符 (Dlang)
我正在尝试创建简单的 REST api,但是当我尝试编译我的代码时,我得到了
frontpage.d(15,3):错误:未定义的标识符“tmp”,您的意思是别名“cmp”吗?
这是我的代码:
有人可以帮我吗?tmp 是传递 mongoDB 集合处理程序的临时变量。
vue.js - Pug (Jade) 基础 HTML 页面:找不到元素:#app
我使用振动服务器。它使用 Pug 预处理器(以前称为 Jade)。这是我的页面代码:
它生成下一个 HTML 输出:
我的 app.js 代码:
但它不起作用。在浏览器控制台中,我收到下一个错误:
Cannot find element: #app
upd:script(src="app.js")
向下移动有帮助。但是有没有更好的变种?或者没关系?
javascript - Vibe.d - 无法为 rest api 生成 JS 脚本
我正在尝试为我的简单 REST API 生成 JS,例如此处所述:doc。我的示例代码:
和界面:
一切都在编译没有任何问题,但我无法在任何地方找到生成的 JS。我在找错地方了吗 - 应用程序项目的主树?
d - 如何在 vibed 中更改事件循环库?
我需要在 vibed 中更改事件循环。Docs 说“vibe.d 一直libevent
默认在后台使用”并且“libasync
是一个完全用 D 编写的跨平台事件循环库”。
我怎样才能libevent
改变libasync
?
我找到了 dub.json 配置的示例,但是如何在 dub.sdl 中设置它?
更新:似乎versions "libasync"
正在工作。
mysql - sql查询不能处理引号
我尝试使用 vibe.d 实现一个小型博客应用程序。我在这个地址有一个表格
http://localhost:8888/gönderiler/oluştur
用户输入帖子标题和正文。比这些信息存储在数据库中。到现在为止这么好。
假设用户输入了一个带引号的字符串,如下所示:
定罪
比sql查询变成这样:
插入到 gonderiler(kullanici_no,baslik,icerik,created_at,updated_at)值(1,'Deneme','deneme'miz','2017-09-25 12:29:30','2017-09-25 12:29 :30')
如您所见,有 3 个引号。
我试图用 \' 替换 ' 字符,但我认为它不起作用。
我的一个朋友建议使用这些字符。
merhaba "dünya"
但这一次我收到这样的错误:
MySQL 错误:“字段列表”中的未知列“deneme”
更新:已解决
我按照建议加了双引号。
validation - Vibe.d 基本表单验证
我有一个后期创建方法:
和这样的后存储方法:
我想做基本的表单验证。例如,如果输入字段为空,它将重定向到上一页。
我想我应该将一些错误消息传递给创建方法,例如baslik 字段不应该为空等。
但是由于我对框架很陌生,所以我不应该弄清楚。该框架是否为表单验证提供了任何工具。
http - 为获取的文件设置 MIME 类型
我有一个静态文件服务器(用 vibe.d 制作)为使用 ES6 模块但扩展名为 .mjs 的网站提供服务。
我的浏览器(Arch Linux 上的 Chromium)在获取模块文件时抛出错误server responded with a non-JavaScript MIME type of "application/octet-stream"
。
看起来我需要使用 .mjs 将 MIME 类型文件从“application/octet-stream”设置为“application/javascript”。我该怎么做呢?我可以将所有脚本更改为.js
,但我宁愿弄清楚如何正确修复它。
如何更改正在获取的文件的 MIME 类型?或者可能更好,我可以更改所有 .mjs 文件的默认 MIME 类型吗?
这是我的 vibe.d 代码:
rest - Vibe.d 休息接口路由器路径匹配错误
我正在使用 vibe.d 作为我的休息 API。我有两种方法:addUser
和getUser
. 我使用@path("/api/v3/users/")
了 ,所以现在 URL 应该如下所示:http://127.0.0.1:8080/api/v3/users/user。POST方法适用于这个URL,但我无法让GET方法工作。
我使用相同的 url (?someParams),但服务器以404响应。我注意到,当我使用 URL http://127.0.0.1:8080/api/v3/users/user/user时,它会显示“从字符串类型转换为 int 类型时出现意外的 'u'”,但如果我在 / 之后放置除用户之外的任何其他内容,它再次抛出 404。
我确定我一定忽略了一些愚蠢的错误:D
界面:
@path("/api/v3/auth/")
interface IUserAPI
{
/** Adding a user */
User addUser(string email, string firstName, string lastName, string password, string locale);
/** Getting a user by id */
User getUser(int id);
}
班级:
注册rest接口:
rest - Vibe.d REST 接口服务图像
像图像一样向用户发送一堆二进制文件:
该函数返回一个Json
数组,其中包含ubyte[]
以下是我可以使用的属性列表:
资料来源:Vibe.d 网站
唯一可以完成这项工作的属性是contentType
,据说它只适用于ubyte[]
函数,这就是我使用的。
我错过了什么?
d - 如何在 Vibe.d 中返回带有 HTTP 代码的 JSON?
我不仅想返回 JSON,还想返回 HTTP 响应代码。
我通过 URLRouter 注册 REST 接口:
我的 REST 实现示例: