如何在 Google App Engine 中“运行”“Paypal 订阅服务”?

Posted

技术标签:

【中文标题】如何在 Google App Engine 中“运行”“Paypal 订阅服务”?【英文标题】:How to "run" a "Paypal Subscriptions Service" inside Google App Engine? 【发布时间】:2011-06-21 01:35:46 【问题描述】:

首先,我想让你知道我是一个完整的新手 在这些关于开发“付费”网络应用程序的事情中。我一直在阅读一些帖子 关于如何将 Paypal 的 IPN 与 Google App Engine 集成,我有一些问题 关于话题,事情是这样的:

我想在我的 web 应用程序中使用 paypal 的订阅按钮(这是使用 GAE 的 Python 基础开发的) 因此,如果用户不想再使用免费版,可以订阅高级版...

我在读到 paypal 可以帮助我管理有关通过 IPN 进行用户控制的事情,但是 我必须在我的 GAE 应用程序中设置它,但我不知道如何......例如:

通知 URL 必须指向 paypal 的配置文件配置中的什么位置? 我相信它必须指向我的应用程序中的 python 脚本,但我不确定......如果 这是真的,这个python脚本必须有什么?

然后,完成后,我怎样才能让贝宝创建 我的用户的用户名和密码,以防止非高级用户进入 “高级功能”??我不想要某些东西的链接,我需要解释如何 在 GAE 上基于 Python 的应用程序中实现“Paypal 订阅服务” 为了提供“高级服务”和免费服务,

谢谢,希望能帮到你

【问题讨论】:

嘿。你说你不想要链接,但你也说你几乎什么都不知道。我们无法将 Web 开发、数据库设计和 paypal 的所有知识都传授给您! 【参考方案1】:

做一个简短的回答(因为我不确定你的问题的范围是什么)。

    维护您的数据模型不是贝宝的工作。您需要为您的用户创建一个数据库条目。

例如,请查看 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*的值...

    是的,paypal 即时支付通知将调用您的应用程序(您可以在 Paypal 界面中的某处指定什么 uri,因此您可以选择将其映射到什么,最好使用您的 https 应用程序子域)。您的应用需要存储 paypal 刚刚发送的内容,并且在正式发布任何内容之前,使用刚刚发送的参数调用 Paypal 服务器,以了解第一个参数是否真正由 Paypal 而不是其他人制作。

要查看一个可行的示例,请检查http://blog.awarelabs.com/2008/paypal-ipn-python-code/ 和http://groups.google.com/group/google-appengine-python/browse_thread/thread/d76701e774e308be,即使这两个示例都很糟糕(它可能会工作,但不要在生产中使用它们,因为你会特别结束真正糟糕的错误管理)。

【讨论】:

以上是关于如何在 Google App Engine 中“运行”“Paypal 订阅服务”?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Django/Google App Engine 中制作日志颜色?

如何在 Google App Engine 标准环境中使用 Google Cloud Build 或其他方法设置环境变量?

如何在 Google App Engine 中使用 sbt?

如何在 Google App Engine 中“运行”“Paypal 订阅服务”?

如何在 Google App Engine 中包含第三方 Python 库?

如何在 Google App Engine 中创建版本号