如何使用 python 后端和 Web 前端提供 braintree 客户端令牌?
How to provide braintree client token using python backend and web frontend?
我正在构建一个具有一些简单后端功能的站点,并且即将使用他们的 python 库和 javascript 前端来实现 braintree。前端是 HTML bootstrap 和一些 Javascript 和 Angular。我没有使用任何 Python/flask 模板 engine/renderer。
但是在他们的教程中,他们并不清楚如何获取需要为每个会话生成的客户端令牌。
现在我已经在 flask 中为 python 后端做了一个常规的 GET 端点:
@app.route('/ctoken')
def client:token():
client_token = braintree.ClientToken.generate()
return client_token
在前端,我使用常规 jQuery 获取令牌:
$.get( "ajax/test.html", function( data ) {
braintree.setup(
data,
'dropin', {
container: 'dropin'
});
});
我想知道这是不是最好的方法?我正在使用 heroku 并将使用他们的 HTTPS 服务,但这是最佳实践还是有其他方法可以做到这一点?
PS。该站点尚未上线,仅进行沙箱和本地测试,希望一切都尽可能安全。
我在布伦特里工作。如有更多问题,请reach out to the Braintree support team.
引用自Braintree "Getting Started" Guide:
There are a number of ways to get your client token into JavaScript so
you can setup Braintree. Many people choose to interpolate the client
token into the view which contains the JavaScript to setup Braintree.
您上面描述的内容,使用 JavaScript 会起作用。最简单的方法是从一开始就在页面中包含客户端令牌,这样您就不必担心单独的调用失败或花费很长时间。为此,生成令牌,然后将其传递到页面的 Jinja2 模板中。我假设您正在使用 Jinja2,因为您的应用似乎使用 Flask。
我正在构建一个具有一些简单后端功能的站点,并且即将使用他们的 python 库和 javascript 前端来实现 braintree。前端是 HTML bootstrap 和一些 Javascript 和 Angular。我没有使用任何 Python/flask 模板 engine/renderer。
但是在他们的教程中,他们并不清楚如何获取需要为每个会话生成的客户端令牌。
现在我已经在 flask 中为 python 后端做了一个常规的 GET 端点:
@app.route('/ctoken')
def client:token():
client_token = braintree.ClientToken.generate()
return client_token
在前端,我使用常规 jQuery 获取令牌:
$.get( "ajax/test.html", function( data ) {
braintree.setup(
data,
'dropin', {
container: 'dropin'
});
});
我想知道这是不是最好的方法?我正在使用 heroku 并将使用他们的 HTTPS 服务,但这是最佳实践还是有其他方法可以做到这一点?
PS。该站点尚未上线,仅进行沙箱和本地测试,希望一切都尽可能安全。
我在布伦特里工作。如有更多问题,请reach out to the Braintree support team.
引用自Braintree "Getting Started" Guide:
There are a number of ways to get your client token into JavaScript so you can setup Braintree. Many people choose to interpolate the client token into the view which contains the JavaScript to setup Braintree.
您上面描述的内容,使用 JavaScript 会起作用。最简单的方法是从一开始就在页面中包含客户端令牌,这样您就不必担心单独的调用失败或花费很长时间。为此,生成令牌,然后将其传递到页面的 Jinja2 模板中。我假设您正在使用 Jinja2,因为您的应用似乎使用 Flask。