Как «запустить» службу подписок Paypal в Google App Engine? - PullRequest
4 голосов
/ 04 февраля 2011

прежде всего, я хочу, чтобы вы знали, что я полный новичок в этих вещах о разработке "платных" веб-приложений. Я читаю несколько постов о том, как интегрировать IPN Paypal с Google App Engine, и у меня есть несколько вопросов про тему, дело так:

Я хочу использовать кнопку подписки PayPal в моем веб-приложении (которое разработано на основе Python от GAE) так что пользователи могут подписаться на премиум-версию, если они больше не хотят использовать бесплатную ...

Я читал, что PayPal может помочь мне управлять этой вещью о контроле пользователей через IPN, но Я должен настроить это в своем приложении GAE, и я не знаю, как ... Например:

Где URL-адрес уведомления должен указывать в конфигурации профиля PayPal? Я считаю, что это должно указывать на скрипт Python в моем приложении, но я не уверен ... Если Это правда, что должен иметь этот скрипт Python?

Затем, после того, как это закончено, Как я могу заставить PayPal создать имена пользователей и пароли для моих пользователей, чтобы не допустить премиум-пользователей из «Премиум-функции» Я не хочу ссылки на что-то, мне нужны объяснения о том, как внедрить «Сервис подписок Paypal» в приложении на основе Python на GAE для того, чтобы предложить «премиум сервис» и бесплатный,

Спасибо, надеюсь, вы можете помочь

1 Ответ

6 голосов
/ 04 февраля 2011

Чтобы дать короткий ответ (поскольку я не совсем уверен, какова сфера вашего вопроса).

  1. Работа PayPal не в том, чтобы поддерживать вашу модель данных. Вам необходимо создать запись в базе данных со своими пользователями.

Для примера посмотрите документацию Google на

http://code.google.com/appengine/docs/python/gettingstarted/usingusers.html и, что более важно, http://code.google.com/appengine/docs/python/gettingstarted/usingdatastore.html

Таким образом, вы можете создать, например, модель данных такого рода:

class Users(db.Model):
  gae_user_object = db.UserProperty()
  premium_member = db.BooleanProperty(default=False)

(конечно, поскольку вы хотите отслеживать подписки, это будет слишком ограниченным, но вы можете понять это).

и заставить скрипт, вызываемый Paypal, вызывать функцию для изменения значения * premium_member * ...

  1. Да, оповещение PayPal о мгновенном платеже вызовет ваше приложение (вы можете указать где-нибудь в интерфейсе Paypal, какой URI, так что вы можете выбрать, к чему его привязать, предпочтительно используя субдомен https appspot). Вашему приложению необходимо будет сохранить то, что PayPal только что отправил, и, прежде чем что-либо официально оформить, перезвонить серверам Paypal с параметрами, которые были только что отправлены, чтобы узнать, действительно ли первый был сделан Paypal, а не кем-то другим.

Чтобы увидеть рабочий пример этого, отметьте http://blog.awarelabs.com/2008/paypal-ipn-python-code/ и http://groups.google.com/group/google-appengine-python/browse_thread/thread/d76701e774e308be,, даже если оба этих примера отстой (вероятно, он будет работать, но не используйте их как в производстве, как вы » что в конечном итоге приведет к очень плохому управлению ошибками).

...