小编JM-*_*GMS的帖子

在Cordova上保护postMessage()

我的Cordova移动应用程序使用iframe加载网站.我想通过iframe发送和接收内容postMessage().但是,通过我的测试我的移动应用程序来源总是localhost:8000file://.本网站上的每个其他示例都使用一个独特的域名和来源(例如www.example.com),但我的起源显然不是唯一的.

如果我的来源是localhost:8000/ file://?如何保护我的移动应用程序和我的网站之间的通信?如果由于某种原因我不能,我可以使用访问令牌来验证如下所示的任何通信吗?

移动应用

var iframe = document.getElementById('iframe');
var data = {
  'access_token': 'whatever'
};
iframe.contentWindow.postMessage(data, 'localhost:8000');
Run Code Online (Sandbox Code Playgroud)

website.com

window.addEventListener('message', function(event) {
  if (!event.data || !event.data.access_token) {return;}
  // ajax request to validate the token here
});
Run Code Online (Sandbox Code Playgroud)

如果它有帮助,我正在做的事情是:

  • 检测iframe何时完成加载.iframe发回一个对象.{'loaded':true}
  • 当用户注销时, iframe 发送带有布尔值的对象.{'logout':true}
  • 当用户按下打印按钮时, iframe 发送带有布尔值和html字符串的对象.{'print':true, 'html':htmlString}
  • 将加密的有效负载发送到iframe,然后等待iframe返回一个对象. {'success':true}

iframe postmessage cordova

14
推荐指数
1
解决办法
398
查看次数

输入数字时的货币屏蔽和格式设置

这就是我想要做的:

到目前为止,我发现的所有内容都只是用小数点后的两个零或逗号来掩盖货币,我已经知道该怎么做。

当用户输入时,我需要能够以货币格式附加数字,以 0.00 作为起点。我需要对多个输入执行此操作。我想我需要跟踪用户为每个输入输入的所有数字。我什至不确定如何最好地解决这个问题。我怎样才能做到这一点?

我把一些东西放在一起作为我的例子,但它非常准系统。

Sale $<input type="text" value=""><br>
Tax $<input type="text" value="">

$(document).on('input',':input',function() {
  if (this.value.length === 1) {
    this.value = '0.0'+this.value;
  }
});
Run Code Online (Sandbox Code Playgroud)

https://jsfiddle.net/apxh4eL2/1/

javascript jquery

1
推荐指数
1
解决办法
4563
查看次数

标签 统计

cordova ×1

iframe ×1

javascript ×1

jquery ×1

postmessage ×1