我有一个打字稿类
export class Restaurant {
constructor ( private id: string, private name: string ) {
}
public getId() : string {
return this.id;
}
public setId(_id : string) {
this.id = _id;
}
public getName () {
return this.name;
}
public setName ( _name:string ) {
this.name = _name;
}
}
Run Code Online (Sandbox Code Playgroud)
然后我有一个这个类的实例(这是一个例子):
restaurant:Restaurant = new Restaurant(1,"TestRest");
Run Code Online (Sandbox Code Playgroud)
然后我将这个餐馆对象存储在某种缓存中
cache.store( restaurant );
Run Code Online (Sandbox Code Playgroud)
然后在我的申请表中我回到了餐馆
var restToEdit = cache.get( "1" );
restToEdit.setName( "NewName" );
Run Code Online (Sandbox Code Playgroud)
但是由于javascripts通过引用传递对象,我对restToEdit所做的更改也会保存在缓存中的餐馆中.
我基本上希望缓存中的餐厅与restToEdit完全不同.
我已经尝试过使用jQuery.clone和extend,但它似乎不起作用,我认为这是因为它是一个打字稿对象.或者那不重要吗?
任何关于如何克隆此对象的答案将不胜感激
谢谢
我目前正在基于微服务架构构建API。
我正在使用JWT验证用户身份。我了解到,当用户发送登录请求时,将返回包含用户身份及其角色/权限等的JWT。然后,此令牌与用户的后续请求一起发送,以告知服务器谁在发送请求。我认为这是正确的理解。
在正常的整体架构中,这可以很好地进行解释。如何将其转移到微服务体系结构以建立微服务之间的信任。
我可以简单地将用户JWT转发到下游微服务,但这不允许下游微服务知道谁/哪个上游微服务正在发送请求。
一个例子是我有一个位置微服务。我想允许餐厅微服务调用位置微服务。但是我也有一个产品微服务,我不希望能够调用位置微服务。
显然,我无法对产品微服务进行编码以调用位置微服务,但这并不能阻止其他人这样做。
有什么建议么?
我正在构建一个 REST API。该 API 运行 JWT 身份验证系统。
显然,这意味着安全的路径需要与授权标头中的请求一起传递有效的 JWT 令牌。在每个 jwt 令牌中我有:
sub: 1 //_id
Run Code Online (Sandbox Code Playgroud)
其中 sub 是当前经过身份验证的用户的 Id。
我的问题是,当我传递这个令牌时,是否还需要在请求正文中传递用户 ID?例如,我有一个创建前提方法。这需要帖子正文包含名称和描述,如下所示:
{
name: "Test Premises",
description: "Lorem Ipsum"
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,API 必须通过验证传递的令牌是否有效来找到用户来关联新的前提,然后对其进行取消编码并检索子字段。
这个方法可以吗?
有什么缺点吗?
我也应该在体内传递 Id 吗?
我正在尝试使用从 node.js 服务器发送电子邮件 nodemailer
我目前有一个在 Google Domains 注册的域名,因此我有一个 G Suite 实例设置来为我提供电子邮件服务器。
我有一个电子邮件设置: noreply@domainname.com
我想要做的是从我的服务器从上面的电子邮件发送一封电子邮件。我不想使用普通的用户和密码验证,因为这对我来说非常不安全。
有没有人有可以帮助我实现这一目标的教程或文档?
只需在可视化工作室中使用C++进行编码,当我运行它执行的程序时,然后输出它.
我相信这可能是因为我在平行运行VS?这可能是为什么?若然,有什么方法可以摆脱它?
错误信息:
'\\psf\home\documents\visual studio 2010\Projects\Object_Oriented_Coursework\Object_Oriented_Coursework'
CMD.EXE was started with the above path as the current directory.
UNC paths are not supported. Defaulting to Windows Directory.
Run Code Online (Sandbox Code Playgroud) 这是我收到的错误。
Error 4 error C2511: 'Vector<T> Menus::sortListBy(sortType,Vector<T>)'
: overloaded member function not found in 'Menus' z:\documents\visual
studio 2010\projects\oo_cw\oo_cw\menus.cpp 410 1 OO_CW
Run Code Online (Sandbox Code Playgroud)
我相信这与我尝试使用包含在标头中但似乎没有转移到其他类的枚举有关。
这是所涉及的 2 个标题以及我正在努力解决的功能:
菜单.cpp:
Vector<connections> Menus::sortListBy(sortType sortKey,Vector<connections> sortList){}
Run Code Online (Sandbox Code Playgroud)
菜单.h
#pragma once
#include "std_lib_facilities.h"
#include "Airport.h"
class Journey;
#include <string>
typedef enum {BACK,FORWARD,INVALID,OPTIONS} result;
typedef enum {BOOK,VIEW,EXIT} firstChoice;
class Menus
{
public:
Menus(void);
~Menus(void);
firstChoice firstMenu();
Airport bookingMenuFirst(Vector<Airport>);
Airport bookingMenuSecond(Vector<connections>,Vector<Airport>);
airlines bookingMenuThird(Airport,Airport,Journey&);
string bookingMenuDate();
bool showReciept(string,string,string,string,double,double,double);
string showRecieptNames();
void readReciept(string);
void optionMenu(Journey);
Vector<connections> sortListBy(sortType,Vector<connections>);
};
Run Code Online (Sandbox Code Playgroud)
旅程.h
#pragma once
#include …Run Code Online (Sandbox Code Playgroud) 仅当主体元素具有某个类时,我才尝试将类应用于嵌套在主体的几个元素中的元素?
目前身体有班级
notie
Run Code Online (Sandbox Code Playgroud)
我现在与另一个班级有一个 div
stuffForNotIE
Run Code Online (Sandbox Code Playgroud)
我试图通过使用以下选择器来实现这一点
body.notie > div.stuffForNotIE
Run Code Online (Sandbox Code Playgroud)
这显然不是我真正的班级名称,但它是我想要实现的目标的一个很好的例子?
关于上述正确选择器的任何想法都不起作用
c++ ×2
jwt ×2
api-design ×1
clone ×1
cmd ×1
css ×1
enums ×1
gmail ×1
gmail-api ×1
html ×1
javascript ×1
node.js ×1
nodemailer ×1
overloading ×1
parallels ×1
rest ×1
typescript ×1
web ×1
windows ×1