小编urb*_*urb的帖子

为什么不应该使用内置服务器部署Flask?

为什么建议使用Apache或Nginx部署Flask应用程序?它有一个内置的服务器,不能只通过python app.py在防火墙中运行和打开正确的端口来部署它吗?

python flask

15
推荐指数
1
解决办法
2990
查看次数

使用 Web Crypto 导入 PEM 密钥

我将 CryptoKey 导出为 PEM 样式,现在我想将其导入回来。我使用以下代码生成了密钥:

function generate() {
    return window.crypto.subtle.generateKey(
    {
        name: "RSA-OAEP",
        modulusLength: 2048, 
        publicExponent: new Uint8Array([0x01, 0x00, 0x01]),
        hash: {name: "SHA-256"}, 
    },
    true, 
    ["encrypt", "decrypt"] 
    ).then(function (key) {
        return key;
    })
    .catch(function (err) {
        console.error(err);
    });
 }
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用以下代码导入字符串(pem 样式)的私钥:

function importPrivateKey(pemKey) {
return crypto.subtle.importKey("pkcs8", convertPemToBinary(pemKey), {name:"RSA-OAEP", hash:{name:"SHA-256"}}, true, ["encrypt", "decrypt"]);}
Run Code Online (Sandbox Code Playgroud)

不幸的是,它返回这个错误:

SyntaxError: Cannot create a key using the specified key usages.
Run Code Online (Sandbox Code Playgroud)

更新

ConvertPemToBinary 函数

function convertPemToBinary(pem) {
var lines = pem.split('\n');
var encoded = '';
for (var i …
Run Code Online (Sandbox Code Playgroud)

javascript webcrypto-api

5
推荐指数
1
解决办法
7038
查看次数

使用请求发布上传文件

我从Flask的HTML表单中收到一个文件,并希望使用Requests将其发布到另一个服务.在目标服务中,传入请求不包含该文件.如何发布上传的文件?

f = request.files['file']
sendFile = {"file": FileStorage(filename=f.filename, stream=f.stream, content_type=f.content_type, content_length=actualSize)}

c = checksumMD5(f.stream)
r = requests.post("http://myservicedotcom/upload", files=sendFile,
                  headers={"X-Auth-Token":token, "Checksum":checksumMD5(f.stream), "File-Size":actualSize})
Run Code Online (Sandbox Code Playgroud)

python flask python-requests

4
推荐指数
1
解决办法
1914
查看次数

仅使用 WebCrypto API 使用密码加密私钥

是否可以使用字符串作为加密密钥并仅使用 WebCryptoAPI 来加密 CryptoKey(私钥)?我实现了一个函数,但出现以下错误:

Uncaught (in promise) DOMException: AES key data must be 128 or 256 bits
Run Code Online (Sandbox Code Playgroud)

还有,我的功能。

function encryptPrivateKey() {
    var promise = new Promise(function (resolve, reject) {
        try {
            var key = new TextEncoder().encode(pwd);
            var iv = crypto.getRandomValues(new Uint8Array(12));
            var alg = {name: 'AES-CTR', iv: iv};
            window.crypto.subtle.importKey('raw', key, alg, false, ['encrypt']).then(function (key) {
                window.crypto.subtle.encrypt(alg, key, privateKeyPEM).then(function (key) {
                    privateKey = key;
                })
            });
            resolve(privateKey);
        } catch (err) {
            reject(Error(err));
        }

    });
    return promise.then(function (result) {
        return result;
    }, …
Run Code Online (Sandbox Code Playgroud)

javascript encryption passwords aes webcrypto-api

3
推荐指数
1
解决办法
1521
查看次数

如何在 Python 中将 datetime-local 转换为 datetime?

如何在 Python 中将 datetime-local(html 表单类型)转换为 datetime?我的html代码是:

<input type="datetime-local" class="form-control" id="istart">
Run Code Online (Sandbox Code Playgroud)

当我收到 POST 请求时,istart 值出现在一个字符串中。

从 Post Request 我收到:u'2015-01-02T00:00'我想将它解析为 Datetime 以插入数据库(通过 sqlalchemy)。

python

2
推荐指数
1
解决办法
2389
查看次数

在客户请求后运行方法

为了最小化请求时间,我想在返回200到客户端之后执行该方法.

@app.route('/register', methods=['POST'])
def register():
      #code and code
      return 200
      send_email_with_validation_url()
Run Code Online (Sandbox Code Playgroud)

我该怎么做?有线程吗?

python flask

1
推荐指数
1
解决办法
487
查看次数

使用Gunicorn时Flask secret_key不可用,即使它已配置

我正在尝试部署一个简单的烧瓶应用程序.然后我选择了gunicorn和nginx.但是当我尝试使用gunicorn运行应用程序时,会出现以下异常:

RuntimeError: the session is unavailable because no secret key was set.  Set the secret_key on the application to something unique and secret.
Run Code Online (Sandbox Code Playgroud)

init.py:

if __name__ == '__main__':
    app.secret_key = config["secret-key"]
    app.run(port=config["port"], host=config["host"], debug=config["debug"])
Run Code Online (Sandbox Code Playgroud)

python flask gunicorn

0
推荐指数
1
解决办法
1011
查看次数

如何使用promise返回更新react.js组件?

我开发了一个返回值的简单承诺.该值必须更新react组件的状态.但它不起作用,因为组件函数setState在promise.then()范围内不可用.

login_account(this.state.email, this.state.password).then(function (session_token) {
                return this.setState({token: session_token});
            });
Run Code Online (Sandbox Code Playgroud)

javascript reactjs

0
推荐指数
1
解决办法
438
查看次数