Sobes.tech
Middle — Senior

Kaip projektavote sistemą naudodami RESTful architektūros principus?

sobes.tech AI

Atsakymas iš AI

Projektuodamas sistemą, naudodamas RESTful architektūros principus Python kalba, laikosi pagrindinių principų:

  • Resursų orientacija: kiekviena sistemos entitetas yra vaizduojamas kaip resursas su unikaliu URI.
  • Naudojant standartinius HTTP metodus: GET duomenų gavimui, POST kūrimui, PUT/PATCH atnaujinimui, DELETE ištrynimui.
  • HTTP būsenos kodai: teisingas atsakymo kodų naudojimas operacijos rezultatui atspindėti (pvz., 200, 201, 404, 400, 500).
  • Be būsenos (stateless): serveris nesaugo kliento būsenos tarp užklausų.
  • Naudojant duomenų formatus kaip JSON duomenų mainams.

Pavyzdys su Flask:

from flask import Flask, jsonify, request

app = Flask(__name__)

items = {}

@app.route('/items/<int:item_id>', methods=['GET'])
def get_item(item_id):
    item = items.get(item_id)
    if item:
        return jsonify(item), 200
    else:
        return jsonify({'error': 'Nerasta'}), 404

@app.route('/items', methods=['POST'])
def create_item():
    data = request.get_json()
    item_id = len(items) + 1
    items[item_id] = data
    return jsonify({'id': item_id}), 201

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

Šis požiūris užtikrina paprastumą, išplečiamumą ir suderinamumą su klientais.