任何机构都可以使用最新的 react-native PayPal 库提供刷卡解决方案吗?
我花了一个星期但没有找到合适的解决方案。
网上有很多旧的和不完整的解决方案,但没有一个合适的和 面向新开发者的完整解决方案。
资源:
https://www.npmjs.com/package/react-native-paypal
最佳答案
不幸的是,据我所知,没有一个是最新的并由社区维护的存储库。这就是您的选择有限的原因。
使用 PayPal API
PayPal 拥有适用于不同用例的各种 API,您可以使用它们而不必担心 SDK 本身。它们为您提供了很多这样的功能,当然它可能不像 SDK 本身那样流畅,但它可以很好地解决您的问题。
如果您同时针对移动设备和 Web 进行开发,则可以同时使用您的 API。因为它们不依赖于特定的平台。
解决方案
我的解决方案非常简单。如果您不想破坏 native 功能并且不确定为什么需要它,请不要使用 PayPal SDK。 PayPal 有一组不同的 API,您可以在服务器端或 client side 上使用它们。无需触及 native 代码。在这里,我给你一个简单的场景,使用 ExpressCheckout API 并在服务器端处理。
对于以下所有步骤,您可以使用 PHP、Node 或任何其他服务器端语言。我只简单地告诉你步骤,剩下的就交给你了!
<强>1。为您的交易创建一个访问 token 。点击下面的链接了解详细信息。
https://developer.paypal.com/docs/integration/direct/make-your-first-call
<强>2。创建付款交易。您需要传递您的付款详细信息,例如货币和总金额。在此步骤中,您也可以传递“return_url”和 cancel_url。确保将您的订单 ID 或订单代码附加到它们,这样您就可以在其中一个触发时跟踪订单并相应地更改您的订单状态。
<强>3。将支付 URL 发送到 React Native 并通过 WebView 加载它。 在此步骤中,您可以使用 React Native 中的 WebView 组件并在其中加载 PayPal URL。稍后为了检查支付是否完成,您可以使用节流功能或使用其他替代方法,例如 WebSocket。这里的目标是了解交易是完成还是取消。
付款完成后。摆脱 WebView 并将用户重定向到感谢页面以及用户付款完成后您需要做的任何其他事情。
可能有更优雅的方法来做到这一点,但我相信对于简单的场景(或更多!),这就足够了。
强>强>强>关于android - REACT NATIVE 的 PayPal 支付集成与最新的 lib android + ios,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44643092/
我的瘦服务器配置了nginx,我的ROR应用程序正在它们上运行。在我发布代码更新时运行thinrestart会给我的应用程序带来一些停机时间。我试图弄清楚如何优雅地重启正在运行的Thin实例,但找不到好的解决方案。有没有人能做到这一点? 最佳答案 #Restartjustthethinserverdescribedbythatconfigsudothin-C/etc/thin/mysite.ymlrestartNginx将继续运行并代理请求。如果您将Nginx设置为使用多个上游服务器,例如server{listen80;server
我在app/helpers/sessions_helper.rb中有一个帮助程序文件,其中包含一个方法my_preference,它返回当前登录用户的首选项。我想在集成测试中访问该方法。例如,这样我就可以在测试中使用getuser_path(my_preference)。在其他帖子中,我读到这可以通过在测试文件中包含requiresessions_helper来实现,但我仍然收到错误NameError:undefinedlocalvariableormethod'my_preference'.我做错了什么?require'test_helper'require'sessions_hel
这里有一个很好的答案解释了如何在Ruby中下载文件而不将其加载到内存中:https://stackoverflow.com/a/29743394/4852737require'open-uri'download=open('http://example.com/image.png')IO.copy_stream(download,'~/image.png')我如何验证下载文件的IO.copy_stream调用是否真的成功——这意味着下载的文件与我打算下载的文件完全相同,而不是下载一半的损坏文件?documentation说IO.copy_stream返回它复制的字节数,但是当我还没有下
我一直很高兴地使用DelayedJob习惯用法:foo.send_later(:bar)这会调用DelayedJob进程中对象foo的方法bar。我一直在使用DaemonSpawn在我的服务器上启动DelayedJob进程。但是...如果foo抛出异常,Hoptoad不会捕获它。这是任何这些包中的错误...还是我需要更改某些配置...或者我是否需要在DS或DJ中插入一些异常处理来调用Hoptoad通知程序?回应下面的第一条评论。classDelayedJobWorker 最佳答案 尝试monkeypatchingDelayed::W
我正在尝试解析一个文本文件,该文件每行包含可变数量的单词和数字,如下所示:foo4.500bar3.001.33foobar如何读取由空格而不是换行符分隔的文件?有什么方法可以设置File("file.txt").foreach方法以使用空格而不是换行符作为分隔符? 最佳答案 接受的答案将slurp文件,这可能是大文本文件的问题。更好的解决方案是IO.foreach.它是惯用的,将按字符流式传输文件:File.foreach(filename,""){|string|putsstring}包含“thisisanexample”结果的
导读语言模型给我们的生产生活带来了极大便利,但同时不少人也利用他们从事作弊工作。如何规避这些难辨真伪的文字所产生的负面影响也成为一大难题。在3月9日智源Live第33期活动「DetectGPT:判断文本是否为机器生成的工具」中,主讲人Eric为我们讲解了DetectGPT工作背后的思路——一种基于概率曲率检测的用于检测模型生成文本的工具,它可以帮助我们更好地分辨文章的来源和可信度,对保护信息真实、防止欺诈等方面具有重要意义。本次报告主要围绕其功能,实现和效果等展开。(文末点击“阅读原文”,查看活动回放。)Ericmitchell斯坦福大学计算机系四年级博士生,由ChelseaFinn和Chri
如何将send与+=一起使用?a=20;a.send"+=",10undefinedmethod`+='for20:Fixnuma=20;a+=10=>30 最佳答案 恐怕你不能。+=不是方法,而是语法糖。参见http://www.ruby-doc.org/docs/ProgrammingRuby/html/tut_expressions.html它说Incommonwithmanyotherlanguages,Rubyhasasyntacticshortcut:a=a+2maybewrittenasa+=2.你能做的最好的事情是:
1.错误信息:Errorresponsefromdaemon:Gethttps://registry-1.docker.io/v2/:net/http:requestcanceledwhilewaitingforconnection(Client.Timeoutexceededwhileawaitingheaders)或者:Errorresponsefromdaemon:Gethttps://registry-1.docker.io/v2/:net/http:TLShandshaketimeout2.报错原因:docker使用的镜像网址默认为国外,下载容易超时,需要修改成国内镜像地址(首先阿里
前置步骤我们都操作完了,这篇开始介绍jenkins的集成。话不多说,看操作1、登录进入jenkins后会让你选择安装插件,选择第一个默认的就行。安装完成后设置账号密码,重新登录。2、配置JDK和Git都需要执行路径,所以需要先把执行路径找到,先进入服务器的docker容器,2.1JDK的路径root@69eef9ee86cf:/usr/bin#echo$JAVA_HOME/usr/local/openjdk-82.2Git的路径root@69eef9ee86cf:/#whichgit/usr/bin/git3、先配置JDK和Git。点击:ManageJenkins>>GlobalToolCon
最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。APK修改,分为以下几步:反编译解包,修改,重打包,修改签名等步骤。安卓apk修改准备工作1.系统配置好JavaJDK环境变量2.需要root权限的手机(针对系统自带apk,其他软件免root)3.Auto-Sign签名工具4.apktool工具安卓apk修改开始反编译本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:按键win+R输入cmd,打开命令窗口,并将路