我尝试使用nodemailer使用NodeJS实现联系表单,但它只适用于本地,它不能在远程服务器上运行...
我的错误信息:
[website.fr-11 (out) 2013-11-09T15:40:26] { [AuthError: Invalid login - 534-5.7.14 <https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbvlX
[website.fr-11 (out) 2013-11-09T15:40:26] 534-5.7.14 V-dFQLgb7aRCYApxlOBuha5ESrQEbRXK0iVtOgBoYeARpm3cLZuUS_86kK7yPis7in3dGC
[website.fr-11 (out) 2013-11-09T15:40:26] 534-5.7.14 N1sqhr3D2IYxHAN3m7QLJGukwPSZVGyhz4nHUXv_ldo9QfqRydPhSvFp9lnev3YQryM5TX
[website.fr-11 (out) 2013-11-09T15:40:26] 534-5.7.14 XL1LZuJL7zCT5dywMVQyWqqg9_TCwbLonJnpezfBLvZwUyersknTP7L-VAAL6rhddMmp_r
[website.fr-11 (out) 2013-11-09T15:40:26] 534-5.7.14 A_5pRpA> Please log in via your web browser and then try again.
[website.fr-11 (out) 2013-11-09T15:40:26] 534-5.7.14 Learn more at https://support.google.com/mail/bin/answer.py?answer=787
[website.fr-11 (out) 2013-11-09T15:40:26] 534 5.7.14 54 fr4sm15630311wib.0 - gsmtp]
[website.fr-11 (out) 2013-11-09T15:40:26] name: 'AuthError',
[website.fr-11 (out) 2013-11-09T15:40:26] data: '534-5.7.14 <https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbvlX\r\n534-5.7.14 V-dFQLgb7aRCYApxlOBuha5ESrQEbRXK0iVtOgBoYeARpm3cLZuUS_86kK7yPis7in3dGC\r\n534-5.7.14 N1sqhr3D2IYxHAN3m7QLJGukwPSZVGyhz4nHUXv_ldo9QfqRydPhSvFp9lnev3YQryM5TX\r\n534-5.7.14 XL1LZuJL7zCT5dywMVQyWqqg9_TCwbLonJnpezfBLvZwUyersknTP7L-VAAL6rhddMmp_r\r\n534-5.7.14 A_5pRpA> Please log in via your …Run Code Online (Sandbox Code Playgroud) 我刚开始使用带有typescript的create-react-app
create-react-app my-app --scripts-version=react-scripts-ts
Run Code Online (Sandbox Code Playgroud)
并且默认的tslint.json配置不允许console.log().
我怎么能(现在)启用console.log?
相关文档位于 https://palantir.github.io/tslint/rules/no-console/.但是他们没有说明这一行:
"no-console": [true, "log", "error"]
Run Code Online (Sandbox Code Playgroud)
我搜索并找到了这个tslint.json配置文件的语法,所以我尝试了这个:
"rules": {
"no-console": [true, "warning"]
}
Run Code Online (Sandbox Code Playgroud)
试图获取只是警告的日志消息.但那没用.
我已经注释掉了我所拥有的一些console.log()行,但希望将来能够这样做.
我已经使用JavaScript了几天了,并且我想要为我定义的对象重载操作符.
在谷歌搜索这个问题后,似乎你无法正式做到这一点,但有一些人声称有一些冗长的方式来执行此操作.
基本上我已经制作了一个Vector2类,希望能够做到以下几点:
var x = new Vector2(10,10);
var y = new Vector2(10,10);
x += y; //This does not result in x being a vector with 20,20 as its x & y values.
Run Code Online (Sandbox Code Playgroud)
相反,我必须这样做:
var x = new Vector2(10,10);
var y = new Vector2(10,10);
x = x.add(y); //This results in x being a vector with 20,20 as its x & y values.
Run Code Online (Sandbox Code Playgroud)
我可以采用一种方法来重载Vector2类中的运算符吗?因为这看起来很丑陋.
我正在寻找一种在React Native中本地存储对象和数据数组的方法.如何才能做到这一点?查看AsyncStorage的api:
static setItem(key:string,value:string,callback?:?(error:?Error)=> void)
设置key的值并在完成时调用callback,如果有则调用Error.返回Promise对象.
如何在React Native中本地存储对象和数组?
我正在用Ionic2/Cordova/Typescript/Angular做一个测试应用程序.我正在使用tslint 5.6.0.
我正在使用以下模块:https: //www.npmjs.com/package/tslint
专注于一个文件......
当linting以下文件时:
import { NgModule, ErrorHandler } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { IonicApp, IonicModule, IonicErrorHandler } from "ionic-angular";
import { MyApp } from "./app.component";
import { AboutPage } from "../pages/about/about";
import { ContactPage } from "../pages/contact/contact";
import { HomePage } from "../pages/home/home";
import { TabsPage } from "../pages/tabs/tabs";
import { StatusBar } from "@ionic-native/status-bar";
import { SplashScreen } from "@ionic-native/splash-screen";
@NgModule( {
declarations: [
MyApp,
AboutPage,
ContactPage, …Run Code Online (Sandbox Code Playgroud) 作为学习 NodeJS 的练习,我正在使用 ExpressJS 构建一种响应 Web 请求的 API。截至目前,程序中有 3 条路径,“/login”、“/register”和“/changePassword”。所有这些方法都不需要处理任何类型的令牌。
但是,我计划添加到程序中的所有其他路由(例如,'/post' 路由)将要求用户使用从 POST 请求获得的令牌对自己进行身份验证,该令牌使用正确的凭据发送到 '/login'。
为了验证令牌,我编写了一个中间件函数:
module.exports.validateToken = function (req,res,next) {
const token = req.headers['x-access-token']
console.log(`validateToken() - TOKEN: ${token}`)
if (token) {
//Make sure the token is valid[...]
next()
}else {
return res.status(401).send({
message: 'Missing token',
success: false
})
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,如何将此中间件仅应用于需要身份验证的路由?我想过创建另一个 Router 对象,并像这样调用它:
const tokenValidator = require('./util').validate.validateToken
// Router used for any actions that require user-authentication
const authRouter = new app.Router()
authRouter.use(tokenValidator)
Run Code Online (Sandbox Code Playgroud)
但这会干扰我原来的、无需身份验证的路由吗?
// Initiate the routes that don't …Run Code Online (Sandbox Code Playgroud) 通常玩游戏,但我正在绕道而行,制作一个小问题和答案应用程序,用于教育目的.
无论如何,我有一个问题类,其中包含许多成员:问题本身,问题的答案,一系列可能的答案等.毫无疑问,这应该是一个类.
然而,我的答案类只包含一个字符串,一个Enum和一个int id号,如下所示:
public class Answer
{
public string Answer { get { return answer;} private set { answer = value; } }
public Answer_Category = Some_Value; // The enum.
public int ID { get { return id; } private set { return id; } }
private string answer;
private int id;
}
Run Code Online (Sandbox Code Playgroud)
好吧,它有两个字符串,也是ctor已经出来了.
那我应该把这个结构化吗?我问,因为它似乎可以与Vector构成一个结构,是一个如此小的数据结构.
自然是一个问答应用程序,答案类/结构将成为许多搜索调用的主题.
IMO这应该是一个结构 - 仅仅因为结构的大小,有一段时间没有使用C#,所以只是寻找一些澄清.
我正在为Android和IOS构建一个react本机应用程序,后端API是用NodeJS编写的.
用户可以从手机上传视频,一旦上传用户,他们的朋友就可以观看视频 - 因此视频需要以可在Android和IOS上播放的格式存储.
我的问题涉及用户上传的视频转换.几年前我开发了一个类似的应用程序; 我使用了repo node-fluent-ffmpeg,它提供了一个很好的API来与FFmpeg进行交互.
在之前的项目(这是一个Web应用程序)中,我将上传的视频转换为两个文件,一个.mp4和一个.webm - 如果用户上传了mp4,那么我会跳过mp4步骤,同样如果他们上传了一个. WEBM.
这有点慢.现在我几年后遇到了同样的要求,经过一些研究后我认为将视频转换为最后一个项目是错误的.
我已经读过,我可以简单地使用FFmpeg来改变视频的容器格式,这比从头开始转换它们要快得多.
我上次使用的视频转换代码有以下几点:
var convertVideo = function (source, format, output, success, failure, progress) {
var converter = ffmpeg(source);
var audioCodec = "libvorbis";
if (format.indexOf("mp4") != -1) {
audioCodec = "aac";
}
converter.format(format)
.withVideoBitrate(1024)
.withAudioCodec(audioCodec)
.on('end', success)
.on('progress', progress)
.on('error', failure);
converter.save(output);
};
Run Code Online (Sandbox Code Playgroud)
用法:
转换为mp4:
convertVideo("PATH_TO_VIDEO", "mp4", "foo.mp4", () => {console.log("success");});
Run Code Online (Sandbox Code Playgroud)
转换为webm:
convertVideo("PATH_TO_VIDEO", "webm", "foo.webm", () => {console.log("success");});
Run Code Online (Sandbox Code Playgroud)
任何人都可以在这里指出有关此操作性能的代码味道吗?这个代码是否比它应该实现IOS和Android之间的跨平台兼容性要多得多?
可能值得一提的是,在这个项目中,对旧操作系统版本的支持并不是什么大问题.
我正在使用Modernizr并且无法获取jquery UI日期选择器以在FireFox中原生显示html5日期输入.
这个小提示显示我的意思 - 在FireFox中打开它在Firefox中 打开时我只是得到一个文本输入 http://jsfiddle.net/Te2yL/
码:
<head>
//Include Modernizr - all items are included (full-fat version)
<script src="assets/js/vendor/modernizr.js"></script>
</head>
<body>
<input
type="date"
id="start-date"
ng-model="someVariable"
format-date
class="form-control date"
/>
<script>
Modernizr.load({
test: Modernizr.inputtypes.date,
nope: ['https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.22/jquery-ui.min.js',
'https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.22/themes/smoothness/jquery-ui.css'
],
complete: function () {
$('input[type=date]').datepicker({
dateFormat: 'yy-mm-dd'
});
}
});
</script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
要确认,在FireFox中打开时,会下载Jquery-ui js&css.
我仍然在浏览器中显示文本输入 - 它的类型在检查DOM时仍然是'日期'.
我错过了什么吗?
非常感谢