Py学习  »  Aaron  »  全部回复
回复总数  3
2 年前
回复了 Aaron 创建的主题 » uvicorn[fastapi]python同时运行HTTP和HTTPS

运行子进程以返回从一个端口到另一个端口的重定向响应。

主要的py:

if __name__ == '__main__':
    Popen(['python', '-m', 'https_redirect'])  # Add this
    uvicorn.run(
        'main:app', port=443, host='0.0.0.0',
        reload=True, reload_dirs=['html_files'],
        ssl_keyfile='/etc/letsencrypt/live/my_domain/privkey.pem',
        ssl_certfile='/etc/letsencrypt/live/my_domain/fullchain.pem')

https_重定向。py:

import uvicorn
from fastapi import FastAPI
from starlette.requests import Request
from starlette.responses import RedirectResponse

app = FastAPI()


@app.route('/{_:path}')
async def https_redirect(request: Request):
    return RedirectResponse(request.url.replace(scheme='https'))

if __name__ == '__main__':
    uvicorn.run('https_redirect:app', port=80, host='0.0.0.0')
2 年前
回复了 Aaron 创建的主题 » 如何在Python中更正dat文件中的数据传输?

数据只是由实际二进制数据而不是文本表示的一组浮点。 Numpy 使用以下方法可能是最快、最简单的:

numpy.fromfile(filepath, dtype=float).reshape([-1,10])

学习如何使用 struct 图书馆下面是一个简单的例子,请大家仔细阅读:

with open(filepath, 'rb') as datafile:
    my_array = list()
    for i, value in enumerate(struct.iter_unpack('f', datafile)):
        if i%10 == 0: #start a new row every 10 columns
            my_array.append(list())
        my_array[-1].append(value)
14 年前
回复了 Aaron 创建的主题 » 如何管理django模板中的javascript模块?

我发布这个问题已经有一段时间了。我一直在做的是:

  1. 编写所需的javascript部分作为静态服务的库
  2. 使用服务器端的值从模板调用静态库中的例程

约束需要以这样一种方式编写:它只充当客户端脚本;不要试图在服务JS时从服务器注入值。最后,我发现在HTML模板中严格地应用服务器端变量不那么容易混淆。

这样我就能:

  1. 将HTML标记上的javascript选择器保留在同一个文件(即模板)中。
  2. 完全避免模板
  3. 在不同的地方重复使用每个javascript库,以及
  4. 将CSS/JS/HTML片段保存在所有希望找到它们的地方

这并不完美,但它让我过得很快,直到一个更整洁的想法出现。

例如,“media/js/alertlib.js”中的JS库可能包括:

function click_alert(selector, msg){ 
    $(selector).click(function(){ alert(msg) })
}

模板有:

<script type="text/javascript" src="media/js/alertlib.js"></script>
<script type="text/javascript">
    click_alert('#clickme', {% message %})
</script>

<div id='clickme'>Click Me</div>