使用联邦协议将电子邮件映射到Ripple地址
项目描述
ripple-federation-python
ripple/federation-php为Python提供的服务。提供名称与Ripple地址之间非常简单的映射。集成到您的站点以接收you@yourdomain.org的Ripple付款。
用法
使用werkzeug,例如,您可能这样做
CORS = {"Access-Control-Allow-Origin": "*"}
from .ripple_federation import Federation, get_ripple_txt
federation = Federation({
'elsdoerfer.name': {'michael': 'rpLJBGZRT8D9ktgdsYv5AWYtePdyLPrEHy'},
})
@expose('/ripple.txt')
def ripple_txt(request):
return Response(get_ripple_txt(
domain=request.host,
federation_url='https://{}{}'.format(
request.host, request.urlmap.build('ripple_federation'))
),
mimetype='text/plain',
headers=CORS)
@expose('/ripple/federation')
def ripple_federation(request):
return Response(
json.dumps(federation.endpoint(request.args)),
mimetype='application/json',
headers=CORS
)
要进行名称到地址的映射之外的操作,您可以指定可调用对象
def lookup_user(domain, user):
ripple, destination_tag = findUser(domain, user)
return {
'destination_address': app.config['PAYMENT_ADDRESS'],
'dt': int(user)
}
federation = Federation({
'elsdoerfer.name': lookup_user,
'elsdoerfer.name': {'michael': callable_allowed_here_as_well},
})
可调用对象必须返回一个字典,该字典将被插入到结果记录中,并可能覆盖标准字段。这样,您可以为联邦规范允许的任何返回值提供任何值。
其他注意事项
在此处测试您的ripple.txt设置:https://ripple.com/tools/txt/
请注意需要HTTPS。