В этой короткой серии мы собираемся посмотреть, как создать заряд на полоску в ряде своих официально поддерживаемых языков!
Сегодня мы собираемся посмотреть, как это сделать с Python и Flask.
Ожидания у вас есть как Python 3, так и PIP3
Установлено и у вас Клавиши в полоску API Настройка и готовы к работе.
Ниже приходит следующее из моего Документация сайта Отказ
Начиная
mkdir python-flask-stripe && cd python-flask-stripe # pip or pip3 depending on env pip3 install Flask pip3 install stripe pip3 install -U python-dotenv touch .env server.py
Настройка .env.
Получите ключи от полосы и замените следующее в файл:
SK_TEST_KEY=sk... # replace sk...
Писать сервер.py.
Настройте файл, чтобы выглядеть следующее:
from flask import Flask from flask import request from dotenv import load_dotenv import stripe import os # Load local .env file and assign key load_dotenv() stripe.api_key = os.environ.get("SK_TEST_KEY") app = Flask(__name__) @app.route("/api/charge", methods = ['POST']) def charge(): try: content = request.get_json() # Print what JSON comes in for the sake of checking print(content) resp = stripe.Charge.create( amount=content['amount'], currency="aud", source="tok_visa", receipt_email=content['receiptEmail'], ) print("Success: %r" % (resp)) return "Successfully charged", 201 except Exception as e: print(e) return "Charge failed", 500 if __name__ == "__main__": app.run()
Над:
- Выбирает и устанавливает ОС ENV из файла .env.
- Устанавливает клавишу API в полоску.
- Устанавливает маршрут
/api/charge
Это только беретПост
метод и создает заряд на основе суммы, которую мы проходим.
Запуск сервера
python3 server.py
запустите сервер на порту 5000.
Бег http post http://localhost: 5000/api/come@example.com
(Использование httpie) вернется с успехом. Проверьте мою панель нашивки, и вы увидите заряд для AUD $ 17.00! Ура!
Я решил использовать httpie, потому что я чувствую, что это забавный инструмент, о котором больше нужно знать! Альтернатива, вы могли бы сделать вышеупомянутое использование Curl
а также (или что-то, что может сделать пост запрос на этот вопрос).
curl --header "Content-Type: application/json" \ --request POST \ --data '{"amount":1700,"receiptEmail":"hello_flask@example.com"}' \ http://localhost:5000/api/charge
Ресурсы и дальнейшее чтение
- Полоса API
- Флэк Hello World Docs
- Полоса Python Github
- Python попробуй/Кроме
- Коды состояния в колбе
- Разборные данные JSON с/колба
- Python Dotenv Github
Образ кредита: Патель Панкадж
Первоначально опубликовано на моем блог . Следуй за мной в Twitter для более скрытых драгоценных камней @ dennisokeeffe92. .
Оригинал: “https://dev.to/okeeffed/your-first-stripe-charge-with-python-flask-in-5-minutes-487a”