如何通过AWS API网关在Android webview中加载网关
我想知道如何将通过AWS API网关访问的网页加载到Android WebView。该API由IAM用户角色/政策的保护,所以只是简单地调用下面是不够的如何通过AWS API网关在Android webview中加载网关
WebView.loadUrl("https:ewfwfbuet234.execute-api.us-west-2.amazonaws.com/STAGE/mypage");
将被建议答案显然是为了实现自己的AWS签名4头,像
String awsSig4Header = myHeaderConstructor(credentials, otherParams);
myWebView.loadUrl("https:ewfwfbuet234.execute-api.us-west-2.amazonaws.com/STAGE/mypage", awsSig4Header);
但是,我想避免实现我自己的签名构造函数在亚马逊更新他们的Sig4方法(也许实现Sig5或什么)的机会 我正在建立的应用程序必须很容易更新(例如只是更新库,不需要代码模块,然后重新构建APK)
我也通过API Gateway控制台的SDK导出器生成了lib。 我使用了以下链接中描述的以下设置来进行方法和积分响应。 但生成的函数返回void。
https://kennbrodhagen.net/2016/01/31/how-to-return-html-from-aws-api-gateway-lambda/
我检查了亚马逊的Android SDK GitHub的页面,并且有人已经请求此特定功能。自七月没有更新2016年
https://github.com/aws/aws-sdk-android/issues/29
最后,网页我加载使用JavaScript,使网页流量也通过setJavaScriptEnabled(真)
的解决方案,我启动Javascript寻找是
o如何配置API网关的方法和集成响应,以便结果可以加载到WebView,也许捕捉响应身体?
o备择到web视图,如果web视图不能处理它
○Java库,可以生成报头和也活性(因此,如果亚马逊并改变SIG4,更新所述应用程序仍然是容易的)
Ø生成一个“预签署网址”(对于API网关,如果它甚至有可能),因此我没有打电话WebView.loadUrl
其他信息时,包括SIG4头:
○网页使用javascript
○网页我试图访问是一样的东西
https:ewfwfbuet234.execute-api.us-west-2.amazonaws.com/STAGE/mypage
谢谢
正如我在原来的帖子中所述,我已经试过这个。但是,它与Android的WebView对象一起使用时不起作用,该对象将网页的URL作为输入。 – mattbrain