Answer
t.me/python_tesstОтвет:
* Serving Flask app "4" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
Объяснение:
Краткое объяснение того, что мы добавили выше:
Строка 15: создает экземпляр нашего узла. Узнайте больше о Flask здесь.
Строка 18: создание случайного имени для нашего узла.
Строка 21: создание экземпляра нашего Blockchain класса.
Строка 24–26: создание /mine конечной точки, которая является GET-запросом.
Строка 28–30: создание /transactions/new конечную точку, которая является POST-запросом, поскольку мы будем отправлять ей данные.
Строка 32–38: Создайте /chain конечную точку, которая возвращает полную цепочку блоков.
Строка 40–41: запускает сервер на порту 5000.
Код:
import hashlib
import json
from textwrap import dedent
from time import time
from uuid import uuid4
from flask import Flask
class Blockchain(object):
...
# Instantiate our Node
app = Flask(__name__)
# Generate a globally unique address for this node
node_identifier = str(uuid4()).replace('-', '')
# Instantiate the Blockchain
blockchain = Blockchain()
@app.route('/mine', methods=['GET'])
def mine():
return "We'll mine a new Block"
@app.route('/transactions/new', methods=['POST'])
def new_transaction():
return "We'll add a new transaction"
@app.route('/chain', methods=['GET'])
def full_chain():
response = {
'chain': blockchain.chain,
'length': len(blockchain.chain),
}
return jsonify(response), 200
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)