Problem API Tidak Bisa Diakses Komputer Lain

Banyak aplikasi ML yang memanfaatkan konsep API agar modul AI dapat diakses oleh orang lain tanpa khawatir kode diambil. Hal ini terjadi karena API hanya menyediakan gerbang input/output yang bisa diakses orang lain. Sebagian besar memerlukan KEY agar tidak sembarangan orang menggunakannya, misalnya ChatGPT, Twitter, dan lain-lain yang kebanyakan subscribe terlebih dahulu.

Biasanya kita mencoba server API dan pengakses di komputer/laptop yang sama dan tidak ada masalah. Namun jika server API di lokasi yang berbeda dengan pengakses, biasanya ditolak oleh server API jika tidak dilengkapi dengan Cross-Origin Resource Sharing (CORS).

Bagaimana cara mengatasinya? Jawabannya adalah CORS. Berikut contoh penggunaan CORS pada Flask:

from flask import Flask, jsonify

from flask_cors import CORS

app = Flask(__name__)

CORS(app, resources={r”/api/*”: {“origins”: “*”}})

# Contoh endpoint

@app.route(‘/api/data’, methods=[‘GET’])

def get_data():

    return jsonify({‘message’: ‘Data dari API’})

if __name__ == ‘__main__’:

    app.run(debug=True, host=’0.0.0.0′)

Di sini folder /api/ diset CORS agar bisa diakses public, dengan lokasi endpoint pada /api/data. Untuk mengujinya buat aplikasi Docker dari kode di atas dan jalankan.

Tinggalkan komentar

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.