对于我的一年级学生,我提供了一个使用 Revealing Module Pattern 编写的基于 ES5 的简单库。这是“主”模块/命名空间的一个片段,它将容纳其他扩展:
window.Library = (function ($) {
if (!$) {
alert("The Library is dependent on jQuery, which is not loaded!");
}
return {};
})(window.jQuery);
Run Code Online (Sandbox Code Playgroud)
这适用于几乎 99.9% 的 Web 开发新手,并且没有将 ES6 等花哨的东西与 Webpack 或 Babel 结合使用。
0.1% 现在要求我提供基于 ES6 的版本,可以正确导入。我很乐意提供这个,但我有点坚持如何最好地解决这个问题。
我显然想保持 ES5 的方式,所以我的学生可以使用脚本标签包含文件并Library.SomeExtension.aFunction();在任何他们喜欢的地方输入。最重要的是,一些扩展依赖于 jQuery,它以与上面的代码片段类似的方式注入。
我现在正在寻找一些可维护的方法来获得两全其美的方法,使用一个代码库,将 jQuery 作为依赖项。我想给 99.9% a window.Library,而我想给 0.1% 一种使用import Library from 'library'.
我可以用一个 JS 文件来完成这两个任务吗?或者我需要一个特殊的 ES6 版本(不是问题)?最重要的是:我将如何以可以支持两种情况的方式重新调整我的代码(都类似于上面的代码段)?
任何和所有指针将不胜感激!
编辑:正如一个方面说明,我已经有一个gulpfile.js在其中贯穿这个库的地方Babel,minifiers和其他的东西。所以必须扩展它来解决上述问题不是问题!
在我的项目中,我尝试启动一个 REST API(使用 FastAPI 构建并使用 Hypercorn 运行),另外我还想在启动时启动一个 RabbitMQ Consumer(使用 aio_pika):
Aio Pika 提供了一个强大的连接,可以在失败时自动重新连接。如果我使用hypercorn app:app消费者运行下面的代码并且其余接口正确启动,但是从 aio_pika 重新连接不再起作用。如何在两个不同的进程(或线程?)中归档生产稳定的 RabbitMQ Consumer 和 RestAPI。我的 python 版本是 3.7,请注意我实际上是一个 Java 和 Go 开发人员,以防我的方法不是 Python 方式:-)
@app.on_event("startup")
def startup():
loop = asyncio.new_event_loop()
asyncio.ensure_future(main(loop))
@app.get("/")
def read_root():
return {"Hello": "World"}
async def main(loop):
connection = await aio_pika.connect_robust(
"amqp://guest:guest@127.0.0.1/", loop=loop
)
async with connection:
queue_name = "test_queue"
# Creating channel
channel = await connection.channel() # type: aio_pika.Channel
# Declaring queue
queue = await channel.declare_queue(
queue_name,
auto_delete=True
) …Run Code Online (Sandbox Code Playgroud) 我有一个有趣的问题.我将python与Flask一起用于身份验证服务,该服务使用flask_jwt_extended生成JWT令牌.这就是我如何使用Flask JWT Extended在Python中生成令牌.
identity = {
"firstname": user.firstname,
"lastname": user.lastname,
"email": user.email,
"uuid": user.user_uuid,
'user_id': user.id
}
access_token = create_access_token(identity=identity, fresh=True)
Run Code Online (Sandbox Code Playgroud)
在配置中,我指定了JWT密钥和JWT算法:
JWT_SECRET_KEY = "this-really-needs-to-be-changed"
JWT_ALGORITHM = "HS256"
Run Code Online (Sandbox Code Playgroud)
在Java中,我使用jjwt库(io.jsonwebtoken,jjwt,0.9.0)来解码我制作的JWT:
Claims userJWT = Jwts.parser()
.setSigningKey("this-really-needs-to-be-changed")
.parseClaimsJwt(token)
.getBody();
Run Code Online (Sandbox Code Playgroud)
但是在Java中我得到一个例外,如果我运行它,我真的不明白问题是什么,因为算法是相同的和令牌.
从几小时开始,我现在尝试弄清问题是什么,因为它对我没有意义,
例外:
: JWT signature does not match locally computed signature. JWT validity cannot be asserted and should not be trusted.
io.jsonwebtoken.SignatureException: JWT signature does not match locally computed signature. JWT validity cannot be asserted and should not be trusted.
at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:354) ~[jjwt-0.9.0.jar!/:0.9.0] …Run Code Online (Sandbox Code Playgroud) 我在 AWS EC2 实例上运行 Docker 容器,Docker 容器通过 Docker 网络连接,该网络通过 etcd 集群进行复制。但所有容器都无法与外部连接。例如,如果我 ping 或 curl 主机,则 100% 的包丢失。etcd 网络通过 AWS 私有 IP 进行通信。
这是我的码头工人信息:
root@ip-10-0-127-34:/home# docker info
Containers: 3
Running: 3
Paused: 0
Stopped: 0
Images: 9
Server Version: 17.05.0-ce
Storage Driver: devicemapper
Pool Name: docker-202:1-2050903-pool
Pool Blocksize: 65.54kB
Base Device Size: 10.74GB
Backing Filesystem: xfs
Data file: /dev/loop0
Metadata file: /dev/loop1
Data Space Used: 4.554GB
Data Space Total: 107.4GB
Data Space Available: 102.8GB
Metadata Space Used:sattler 6.922MB
Metadata Space Total: …Run Code Online (Sandbox Code Playgroud) 我有3台运行Redis和Sentinel的服务器。所有实例都在配置中
requirepass XXX
masterauth XXX
Run Code Online (Sandbox Code Playgroud)
我可以使用redis-cli连接到redis服务器,但是如果尝试连接到哨兵,则无法进行身份验证。
root@ip-:/usr/lib/nagios/plugins# redis-cli -p 26379
127.0.0.1:26379> AUTH xxx
(error) ERR unknown command 'AUTH'
127.0.0.1:26379>
Run Code Online (Sandbox Code Playgroud)
如果我使用相同的命令,但带有redis端口,则可以使用。
最好的谢谢
最近我创建了一个泊坞窗,并在那里创建了一个hugo站点,当我启动页面但在导航器中不收费时出现问题。我对此很陌生,所以我迷路了。
这是我启动网站时显示的内容:
WARN 2019/12/09 16:15:11 found no layout file for "HTML" for "taxonomyTerm": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
| EN
+------------------+----+
Pages | 4
Paginator pages | 0
Non-page files | 0
Static files | 17
Processed images | 0
Aliases | 0
Sitemaps | 1
Cleaned | 0
Total in 6 ms
Watching for changes in /cvcontainer/cv-online/{archetypes,content,data,layouts,static,themes}
Watching for config changes in /cvcontainer/cv-online/config.toml
Environment: "development"
Serving pages …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用彩色图地震创建颜色条。我希望颜色图在-6 到 6 的范围内,但在 -1.5 到 -.5 范围内为白色,然后从那里开始发散,大于-.5的数字为红色,小于-1.5的数字为蓝色。
有什么简单的方法可以做到这一点吗?
我正在尝试这个:
lower = plt.cm.seismic(np.linspace(-6, -1.5, 10))
upper = plt.cm.seismic(np.linspace(-.5, 6, 10))
colors = np.vstack((lower, upper))
tmap = matplotlib.colors.LinearSegmentedColormap.from_list('map_white', colors)
Run Code Online (Sandbox Code Playgroud) docker ×2
python ×2
amazon-ec2 ×1
ecmascript-6 ×1
es6-modules ×1
etcd ×1
fastapi ×1
hugo ×1
hypercorn ×1
java ×1
javascript ×1
jwt ×1
matplotlib ×1
python-3.x ×1
redis ×1
sentinel ×1