Простой прием и возврат Python-сервера? - PullRequest
0 голосов
/ 08 января 2019

Мне нужно запустить сервер Python локально для целей тестирования. Все, что нужно сделать, это ответить JSON, полученным в запросе.

Я реализовал необходимую функциональность, используя Node.js. Я хотел бы переписать его на Python, поскольку он используется для тестирования службы Python. Я не смог найти каких-либо четких примеров того, как это сделать. Из того, что я могу сказать, это требует знания сетевого программирования, которого у меня нет на данный момент (объяснения и / или материалы о том, что происходит на сетевом уровне, были бы признательны!)

Код Node.js ниже:

#!/usr/bin/env node
const http = require("http");

const PORT = process.argv[2]

const server = http.createServer((req, res) => {
    let data = "";
    req.on("error", err => {
        throw err;
    });
    req.on("data", chunk => {
        data += chunk;
    });
    req.on("end", () => {
        res.setHeader("Content-Type", "application/json")
        res.write(data, () => res.end());
    });
});

server.listen(PORT, () => {
    console.log(`Dummy server listing on port: ${PORT}`)
});

1 Ответ

0 голосов
/ 08 января 2019

Python имеет много фреймворков, это просто Flask!

https://medium.com/@aliciagilbert.itsimplified/a-slick-crud-application-built-using-python-with-flask-and-sqlite3-to-teach-simple-mysql-queries-bd75e1109582

[Обновлено]

#!/usr/bin/python

from flask import Flask
from flask import request

app = Flask(__name__)

@app.route("/")
def index():
    parameter= request.args.get('parameter', default = 1, type = int)
    return "Hello Flask!"

if __name__ == '__main__':
    app.run(debug=True)

Сохраните в app.py и запустите "python app.py", по умолчанию будет прослушивать порт 5000 - http://localhost:5000/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...