- springboot集成Netty
墨_风
开发笔记springbootjavanetty
一、Netty介绍Netty的系列文章,正在更新中二、Netty集成io.nettynetty-all2.1、配置文件#netty配置netty:boss:1#boss线程数量默认为cpu线程数*2worker:4#worker线程数量默认为cpu线程数*2timeout:6000#连接超时时间默认为30sport:7000#服务器主端口默认7000portSalve:7001#服务器备用端口默认
- BSD协议栈:UDP发送
skaiuijing
TCP/IP协议栈udp网络协议网络
BSD实现在BSD中UDP头部数据结构如下:/**Udpprotocolheader.*PerRFC768,September,1981.*/structudphdr{u_shortuh_sport;/*sourceport*/u_shortuh_dport;/*destinationport*/shortuh_ulen;/*udplength*/u_shortuh_sum;/*udpchecks
- python系列之:读取yaml文件
快乐骑行^_^
日常分享专栏python系列读取yaml文件
python系列之:读取yaml文件一、yaml文件二、读取yaml文件一、yaml文件data.ymlname:刘备power:80000foods:-apple-orangehobby:sport:footballgame:fight二、读取yaml文件importyamlwithopen("/data/firstProject/data.yml")asf:print(yaml.load(f,
- Django后端开发——Django应用及分布式路由
^_^2412
Django后端开发djangopython后端
文章目录参考资料Django应用创建注册分布式路由配置分布式路由Step1-主路由中调用include函数Step2-应用下配置urls.py配置分布式路由的示例主路由中调用include函数应用下配置urls.py效果练习创建应用news和sport在settings.py里进行注册urls.pynews下新建urls.py(sport同理)news的views.py(sport同理)效果应用下
- PHP从二维数组获取指定数据,组成新维二数组
程序员Winn
背景有时候PHP接收前端传递过来的数据,若是一个二维数组且数组中有些数据并不需要存入数据库,因此需要对该二维数组进行过滤,获取指定数据,重新组成一个二维数组,然后存入数据库中前端传递过来的原始二维数组image过滤后新的二维数组image实现代码array('sex'=>'男','food'=>'rice','sport'=>'walk','name'=>'小明',),1=>array('sex'
- 晨间日记79/90
_也许明天__
Mar222019周五坐标:广州「要有多自律就有多自由」就寝21:56晨起05:38图片发自App【易效能90天目标】①晚十早六②每日锻炼半小时③写晨间日记===============================【Sport】图片发自App【Work】*【Goodhabit-Signin】❤早睡️√❤早起√❤阅读√❤Frank英语打卡√【感恩】放弃很容易,但最终会一无所得;坚持很难,但最后一
- python3导入sql文件
野猪佩挤
sql数据库
导入1importloggingimportpymysql#定义连接参数db_config={"host":"192.168.0.52","user":"root","password":"S3spxRSi2P","port":8541,"database":"sport01"}#配置日志记录logger=logging.getLogger()logger.setLevel(logging.INF
- 第十一章 实现reactive和readonly嵌套对象转换的功能
LJPchosen1
vue3源码javascript
实现reactive和readonly嵌套对象转换的功能reactive嵌套主要实现是reactive包装过的对象里面的其他对象也是reactive的测试用例:import{isReactive,reactive}from"../reactive"describe('reactive',()=>{it('happypath',()=>{constoriginal={foo:1,sport:{nam
- Java程序设计:必实验2 类的高级应用
起床悠悠
Javajava开发语言
(1)编写一个Athlete类。该类包含三个成员变量name、sport和medal,分别代表一个运动员的姓名、最擅长的运动项目名称和在2023年亚运会获得的奖牌数量。在该类中重写Object类的toString方法,当调用它重写的toString方法时,输出这个运动员的姓名、运动项目和奖牌数量。package必实验2;//定义Athlete类classAthlete{Stringname;//运
- CP_AutoSar目录
老灰╮(╯-╰)╭
CP_AutosarAutosarCanApeCanoe
目录一、RTE二、模式和状态管理三、BSW四、工具链相关五、杂项六、优化相关 一些笔记和日常记录。有部分未包含在此目录中。一、RTE[AutoSar]基础部分RTE01介绍[AutoSar]基础部分RTE02S/RPort显式/隐式[AutoSar]基础部分RTE03C/SPort同步/异步[AutoSar]基础部分RTE04数据类型的定义及使用二、模式和状态管理[AutoSar]状态管理(
- 【A•T英语角】第二十二期 A sport you love.邀请函
AT_英语角
Inthisissue,let’stalkaboutsports.Asthesayinggoes,thebodyisthecapitalofrevolution,andexerciseorfitnesshasbecomethefirstchoiceforeveryonetostayhealthy.Maybeyouareveryexperiencedinsports,andyoucanshareon
- Python (十五) 面向对象之多继承问题
飞乐鸟
#基础python开发语言
程序员的公众号:源1024,获取更多资料,无加密无套路!最近整理了一波电子书籍资料,包含《EffectiveJava中文版第2版》《深入JAVA虚拟机》,《重构改善既有代码设计》,《MySQL高性能-第3版》,《Java并发编程实战》等等获取方式:关注公众号并回复电子书领取,更多内容持续奉上多继承存在继承问题,先看如下代码问题classPerson:deftalent(self,sport):se
- SpringBoot 在CentOS7部署
Meathill大魔王
SpringBoot在CentOS7部署-CSDN博客CentOS7使用Systemd部署1.增加服务文件进入服务文件目录:cd/etc/systemd/system/创建服务文件:(文件名对应项目名,可自定义)vimmy-apps.service2.编辑内容[Unit]Description=sport-enrollserviceAfter=syslog.target[Service]ExecS
- iptables详解:常用模块的基本使用
未知百分百
安全防火墙linux网络linux服务器运维web安全安全iptables
目录tcp扩展模块multiport扩展模块iprange扩展模块connlimit模块limit扩展模块udp扩展模块icmp扩展模块state扩展模块限制每分钟接收10个ICMP数据报文允许10个数据报文快速通过,然后限制每分钟接收1个个ICMP数据报文限制网络传输的带宽不可以超过500k/stcp扩展模块-ptcp-mtcp--sport用于匹配tcp协议报文的源端口,可以使用冒号指定一个连
- mongodb——查询文档内部属性以及数组
秋千不会坠
纸上谈兵mongodb数据库查询
上一篇博客中,我们学会了最基础的查询方法。即按照某一个属性,使用最简单的属性匹配方式查询。这一篇博客中我们来讲一下文档内部嵌套属性的查询以及对于数组的查询。嵌入文档查询使用场景:如果一个文档内部有层级关系,此时想要根据内部属性进行查找例子:如果一个文档格式为{"favorite":{"sport":"soccer","fruit":"apple"}}此时想要通过fruit=apple进行查询,则此
- python基础
haonanxu
python开发语言numpy
Python基础笔记一、字符串1、字符串拼接拼接是字符串常见的操作,可以用加号把两个字符串连接起来,产生一个新的字符串,像这样myFavorit='我最爱的运动是:'sport='足球'print(myFavorit+sport)运行结果如下我最爱的运动是:足球当然,还可以有更多的拼接,像这样myFavorit='我最爱的运动有:'sport1='足球'sport2='蓝球'print(myFav
- hcip第一天
缓存三秒~
hcip基础以及实验网络网络协议
HCIP---华为认证体系下的高级网络工程师传输层---实现端到端的传输----应用到应用之间的传输----端口号(传输层的地址)---区分和标定不同的应用----16位二进制构成---0-65535(0一般不作为传输层的端口使用)1-65535;其中1-1023称为知名端口号,用来标定已知的服务。-----SPORT,DPORT获取对方IP地址的方法:1,直接知道对方的IP地址2,通过域名获取对
- 老男孩day-53
四贝勒_825f
课程安排说明跳板机服务介绍说明跳板机服务安装部署方式一:官方网站方式docker方式二:简单方式跳板机服务应用方式课程介绍部分iptables防火墙iptables服务概念原理知识a规则匹配原理概念b表和链匹配的原理iptables服务表和链概念4表5链2表5链iptables防火墙配置过程filter表:防火墙命令参数(查看初始化添加删除修改规则-s-d-i-o-p--dport--sport-
- 2019-12-17 德语每日单词
AK蜗牛
管道Rohrleitung听zuhören音乐Musik坐sitzen舞蹈Tanz我喜欢古典音乐IchmagklassischeMusik.他们喜欢听音乐SiehörengernMusik.他们不喜欢跳舞Sietanzennichtgern.体育Sport游戏spielen足球Fußball运动员Sportler你做运动吗?TreibstduSport?游戏spielen我们踢足球Wirspiel
- iptables详解(6):iptables扩展匹配条件之’–tcp-flags’
帅大大的架构之路
运维tcp/ip网络网络协议iptables
原文在本博客中,从理论到实践,系统的介绍了iptables,如果你想要从头开始了解iptables,可以查看iptables文章列表,直达链接如下iptables零基础快速入门系列如果你看过前文,那么你一定知道,前文已经对”tcp扩展模块”做过总结,但是只总结了tcp扩展模块中的”–sport”与”–dport”选项,并没有总结”–tcp-flags”选项,那么此处,我们就来认识一下tcp扩展模块
- 2020,
冉小妞的酒窝没有酒
突如其来的生活变动,需要我们的内心做出相应的调整。按理说,每年都最期待写年终总结,今年突然不知道要从哪开始。只想简单再简单地列下今年的清单。感性越来越少,理性占据了头脑。后来一想这样不对,没有反馈。没有反省的人生,不值得过。今年的总结分为四个部分,简单说一下,book【9】,movie【24】,newthings【19】,sport[165.6km]bookmovie读书和电影是每年的必备项目,不
- 正则表达式 匹配任意长度的字符
weixin_43831204
java基础
正则表达式匹配任意长度的字符语法:.*?例子:September9th2020,16:59:00.692[jmfen-sport-recommend-service:172.17.77.4:1052]2020-09-0916:59:00.692INFO21[http-nio-1052-exec-1]s.b.s.i.FrontColumnsRecommendServiceImpl:4bba1120-
- 2018-11-13
winwin1012
怎样让你的雅思口语有着质的飞跃?关于雅思口语测试解析,如何让你陈述的内容不再想背诵,几个要点下来,只是达到基本的要求,现在咱们就来深入探讨下,对于进一步提升自己的雅思口语,你还需进行哪方面磨砺。解题思路除语速外,解题思路也是考官判定你是否背诵的一个渠道。极易出现背诵痕迹的重点有两条:1.前后矛盾2.文不对题譬如说,在基础题Sport话题时,烤鸭们可能陈述了自己不大喜欢运动;但是进入卡片题Anart
- Hydra参数
arissa666
it安全
kali的hyda参数参数:hydra[[[-lLOGIN|-LFILE][-pPASS|-PFILE]]|[-CFILE]][-ens][-oFILE][-tTASKS][-MFILE[-TTASKS]][-wTIME][-f][-sPORT][-S][-vV]serverservice[OPT]-R继续从上一次进度接着破解。-S采用SSL链接。-sPORT可通过这个参数指定非默认端口。-lLO
- Python基本功
weixin_39851178
python开发语言
任何工作,没别的,就是苦练基本功,在篮球场上,我常用非常简单的基本功就可以克敌制胜,工作中也是如此字符串1:字符串拼接a="'人民'"b=123print("我是"+a+""+str(b))2:字符串格式化year=1949name='人民'sport='站起来了'print("%s中国%s从今以后%s"%(year,name,sport))将数字进行了格式化,同时简单方便。3:字符串的格式化精度
- 好好
Jeremy_da47
https://www.mirror.co.uk/sport/football/news/juan-sebastian-veron-theory-jose-13609549
- python 使用 scapy 伪造TCP三次握手
DeltaTime
渗透测试pythontcp/ip网络
#利用scapy完成三次握手:五元组:源IP,源端口,协议,目标IP,目标端口,S,SA,A,seq,acksport=random.randint(12000,30000)#源端口号seq=random.randint(10000,20000)#开始序列号#1.第一次握手发送SYN,第二次握手获取响应SYN-ACKpkg_1=IP(dst='192.168.110.130')/TCP(sport
- 密码攻击神器hydra
皮一下怎么了
hydra是黑客组织thc的一款开源密码攻击工具,功能十分强大,支持多种协议的破解,在KALI的终端中执行hydra-h可以看到详细介绍语法:hydra[[[-lLOGIN|-LFILE][-pPASS|-PFILE]]|[-CFILE]][-ensr][-oFILE][-tTASKS][-MFILE[-TTASKS]][-wTIME][-WTIME][-f][-sPORT][-xMIN:MAX:
- 大湿以身试“险”,瞧DX7 Prime如何化险为夷
CR7_LIN拉萨天空
始于颜值,忠于实力性能进化同时也不忘玩乐这就是东南DX7Prime这不我们的DX7Prime在不久之前就跟多米诺骨牌来了一次“不分彼此”的合体一键启动,智驭不凡1.8T+DCT全新动力组合高效而势不可挡ECO+SPORT双驾驶模式在缓急之间切换,更显得张弛有度。ADAS高级辅助驾驶系统,五大安全功能齐备——AEB主动刹车系统LDWS车道偏离警示系统FCW前方碰撞预警系统HBA自适应远近光灯调节系统
- 【车载开发系列】AutoSar软件组件接口
进击的横打
#软件工程服务器网络
【车载开发系列】AutoSar软件组件接口【车载开发系列】AutoSar软件组件接口【车载开发系列】AutoSar软件组件接口一.端口概念二.三种端口方向三.五种端口属性1)S/RPort2)C/SPort3)ModeSwitchinterface4)其他Port四.PortInterface五.PortInterfaceMapping六.PortPrototype七.PortIF与PortPro
- 统一思想认识
永夜-极光
思想
1.统一思想认识的基础,才能有的放矢
原因:
总有一种描述事物的方式最贴近本质,最容易让人理解.
如何让教育更轻松,在于找到最适合学生的方式.
难点在于,如何模拟对方的思维基础选择合适的方式. &
- Joda Time使用笔记
bylijinnan
javajoda time
Joda Time的介绍可以参考这篇文章:
http://www.ibm.com/developerworks/cn/java/j-jodatime.html
工作中也常常用到Joda Time,为了避免每次使用都查API,记录一下常用的用法:
/**
* DateTime变化(增减)
*/
@Tes
- FileUtils API
eksliang
FileUtilsFileUtils API
转载请出自出处:http://eksliang.iteye.com/blog/2217374 一、概述
这是一个Java操作文件的常用库,是Apache对java的IO包的封装,这里面有两个非常核心的类FilenameUtils跟FileUtils,其中FilenameUtils是对文件名操作的封装;FileUtils是文件封装,开发中对文件的操作,几乎都可以在这个框架里面找到。 非常的好用。
- 各种新兴技术
不懂事的小屁孩
技术
1:gradle Gradle 是以 Groovy 语言为基础,面向Java应用为主。基于DSL(领域特定语言)语法的自动化构建工具。
现在构建系统常用到maven工具,现在有更容易上手的gradle,
搭建java环境:
http://www.ibm.com/developerworks/cn/opensource/os-cn-gradle/
搭建android环境:
http://m
- tomcat6的https双向认证
酷的飞上天空
tomcat6
1.生成服务器端证书
keytool -genkey -keyalg RSA -dname "cn=localhost,ou=sango,o=none,l=china,st=beijing,c=cn" -alias server -keypass password -keystore server.jks -storepass password -validity 36
- 托管虚拟桌面市场势不可挡
蓝儿唯美
用户还需要冗余的数据中心,dinCloud的高级副总裁兼首席营销官Ali Din指出。该公司转售一个MSP可以让用户登录并管理和提供服务的用于DaaS的云自动化控制台,提供服务或者MSP也可以自己来控制。
在某些情况下,MSP会在dinCloud的云服务上进行服务分层,如监控和补丁管理。
MSP的利润空间将根据其参与的程度而有所不同,Din说。
“我们有一些合作伙伴负责将我们推荐给客户作为个
- spring学习——xml文件的配置
a-john
spring
在Spring的学习中,对于其xml文件的配置是必不可少的。在Spring的多种装配Bean的方式中,采用XML配置也是最常见的。以下是一个简单的XML配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.or
- HDU 4342 History repeat itself 模拟
aijuans
模拟
来源:http://acm.hdu.edu.cn/showproblem.php?pid=4342
题意:首先让求第几个非平方数,然后求从1到该数之间的每个sqrt(i)的下取整的和。
思路:一个简单的模拟题目,但是由于数据范围大,需要用__int64。我们可以首先把平方数筛选出来,假如让求第n个非平方数的话,看n前面有多少个平方数,假设有x个,则第n个非平方数就是n+x。注意两种特殊情况,即
- java中最常用jar包的用途
asia007
java
java中最常用jar包的用途
jar包用途axis.jarSOAP引擎包commons-discovery-0.2.jar用来发现、查找和实现可插入式接口,提供一些一般类实例化、单件的生命周期管理的常用方法.jaxrpc.jarAxis运行所需要的组件包saaj.jar创建到端点的点到点连接的方法、创建并处理SOAP消息和附件的方法,以及接收和处理SOAP错误的方法. w
- ajax获取Struts框架中的json编码异常和Struts中的主控制器异常的解决办法
百合不是茶
jsjson编码返回异常
一:ajax获取自定义Struts框架中的json编码 出现以下 问题:
1,强制flush输出 json编码打印在首页
2, 不强制flush js会解析json 打印出来的是错误的jsp页面 却没有跳转到错误页面
3, ajax中的dataType的json 改为text 会
- JUnit使用的设计模式
bijian1013
java设计模式JUnit
JUnit源代码涉及使用了大量设计模式
1、模板方法模式(Template Method)
定义一个操作中的算法骨架,而将一些步骤延伸到子类中去,使得子类可以不改变一个算法的结构,即可重新定义该算法的某些特定步骤。这里需要复用的是算法的结构,也就是步骤,而步骤的实现可以在子类中完成。
 
- Linux常用命令(摘录)
sunjing
crondchkconfig
chkconfig --list 查看linux所有服务
chkconfig --add servicename 添加linux服务
netstat -apn | grep 8080 查看端口占用
env 查看所有环境变量
echo $JAVA_HOME 查看JAVA_HOME环境变量
安装编译器
yum install -y gcc
- 【Hadoop一】Hadoop伪集群环境搭建
bit1129
hadoop
结合网上多份文档,不断反复的修正hadoop启动和运行过程中出现的问题,终于把Hadoop2.5.2伪分布式安装起来,跑通了wordcount例子。Hadoop的安装复杂性的体现之一是,Hadoop的安装文档非常多,但是能一个文档走下来的少之又少,尤其是Hadoop不同版本的配置差异非常的大。Hadoop2.5.2于前两天发布,但是它的配置跟2.5.0,2.5.1没有分别。 &nb
- Anychart图表系列五之事件监听
白糖_
chart
创建图表事件监听非常简单:首先是通过addEventListener('监听类型',js监听方法)添加事件监听,然后在js监听方法中定义具体监听逻辑。
以钻取操作为例,当用户点击图表某一个point的时候弹出point的name和value,代码如下:
<script>
//创建AnyChart
var chart = new AnyChart();
//添加钻取操作&quo
- Web前端相关段子
braveCS
web前端
Web标准:结构、样式和行为分离
使用语义化标签
0)标签的语义:使用有良好语义的标签,能够很好地实现自我解释,方便搜索引擎理解网页结构,抓取重要内容。去样式后也会根据浏览器的默认样式很好的组织网页内容,具有很好的可读性,从而实现对特殊终端的兼容。
1)div和span是没有语义的:只是分别用作块级元素和行内元素的区域分隔符。当页面内标签无法满足设计需求时,才会适当添加div
- 编程之美-24点游戏
bylijinnan
编程之美
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Random;
import java.util.Set;
public class PointGame {
/**编程之美
- 主页面子页面传值总结
chengxuyuancsdn
总结
1、showModalDialog
returnValue是javascript中html的window对象的属性,目的是返回窗口值,当用window.showModalDialog函数打开一个IE的模式窗口时,用于返回窗口的值
主界面
var sonValue=window.showModalDialog("son.jsp");
子界面
window.retu
- [网络与经济]互联网+的含义
comsci
互联网+
互联网+后面是一个人的名字 = 网络控制系统
互联网+你的名字 = 网络个人数据库
每日提示:如果人觉得不舒服,千万不要外出到处走动,就呆在床上,玩玩手游,更不能够去开车,现在交通状况不
- oracle 创建视图 with check option
daizj
视图vieworalce
我们来看下面的例子:
create or replace view testview
as
select empno,ename from emp where ename like ‘M%’
with check option;
这里我们创建了一个视图,并使用了with check option来限制了视图。 然后我们来看一下视图包含的结果:
select * from testv
- ToastPlugin插件在cordova3.3下使用
dibov
Cordova
自己开发的Todos应用,想实现“
再按一次返回键退出程序 ”的功能,采用网上的ToastPlugins插件,发现代码或文章基本都是老版本,运行问题比较多。折腾了好久才弄好。下面吧基于cordova3.3下的ToastPlugins相关代码共享。
ToastPlugin.java
package&nbs
- C语言22个系统函数
dcj3sjt126com
cfunction
C语言系统函数一、数学函数下列函数存放在math.h头文件中Double floor(double num) 求出不大于num的最大数。Double fmod(x, y) 求整数x/y的余数。Double frexp(num, exp); double num; int *exp; 将num分为数字部分(尾数)x和 以2位的指数部分n,即num=x*2n,指数n存放在exp指向的变量中,返回x。D
- 开发一个类的流程
dcj3sjt126com
开发
本人近日根据自己的开发经验总结了一个类的开发流程。这个流程适用于单独开发的构件,并不适用于对一个项目中的系统对象开发。开发出的类可以存入私人类库,供以后复用。
以下是开发流程:
1. 明确类的功能,抽象出类的大概结构
2. 初步设想类的接口
3. 类名设计(驼峰式命名)
4. 属性设置(权限设置)
判断某些变量是否有必要作为成员属
- java 并发
shuizhaosi888
java 并发
能够写出高伸缩性的并发是一门艺术
在JAVA SE5中新增了3个包
java.util.concurrent
java.util.concurrent.atomic
java.util.concurrent.locks
在java的内存模型中,类的实例字段、静态字段和构成数组的对象元素都会被多个线程所共享,局部变量与方法参数都是线程私有的,不会被共享。
- Spring Security(11)——匿名认证
234390216
Spring SecurityROLE_ANNOYMOUS匿名
匿名认证
目录
1.1 配置
1.2 AuthenticationTrustResolver
对于匿名访问的用户,Spring Security支持为其建立一个匿名的AnonymousAuthenticat
- NODEJS项目实践0.2[ express,ajax通信...]
逐行分析JS源代码
Ajaxnodejsexpress
一、前言
通过上节学习,我们已经 ubuntu系统搭建了一个可以访问的nodejs系统,并做了nginx转发。本节原要做web端服务 及 mongodb的存取,但写着写着,web端就
- 在Struts2 的Action中怎样获取表单提交上来的多个checkbox的值
lhbthanks
javahtmlstrutscheckbox
第一种方法:获取结果String类型
在 Action 中获得的是一个 String 型数据,每一个被选中的 checkbox 的 value 被拼接在一起,每个值之间以逗号隔开(,)。
所以在 Action 中定义一个跟 checkbox 的 name 同名的属性来接收这些被选中的 checkbox 的 value 即可。
以下是实现的代码:
前台 HTML 代码:
- 003.Kafka基本概念
nweiren
hadoopkafka
Kafka基本概念:Topic、Partition、Message、Producer、Broker、Consumer。 Topic: 消息源(Message)的分类。 Partition: Topic物理上的分组,一
- Linux环境下安装JDK
roadrunners
jdklinux
1、准备工作
创建JDK的安装目录:
mkdir -p /usr/java/
下载JDK,找到适合自己系统的JDK版本进行下载:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
把JDK安装包下载到/usr/java/目录,然后进行解压:
tar -zxvf jre-7
- Linux忘记root密码的解决思路
tomcat_oracle
linux
1:使用同版本的linux启动系统,chroot到忘记密码的根分区passwd改密码 2:grub启动菜单中加入init=/bin/bash进入系统,不过这时挂载的是只读分区。根据系统的分区情况进一步判断. 3: grub启动菜单中加入 single以单用户进入系统. 4:用以上方法mount到根分区把/etc/passwd中的root密码去除 例如: ro
- 跨浏览器 HTML5 postMessage 方法以及 message 事件模拟实现
xueyou
jsonpjquery框架UIhtml5
postMessage 是 HTML5 新方法,它可以实现跨域窗口之间通讯。到目前为止,只有 IE8+, Firefox 3, Opera 9, Chrome 3和 Safari 4 支持,而本篇文章主要讲述 postMessage 方法与 message 事件跨浏览器实现。postMessage 方法 JSONP 技术不一样,前者是前端擅长跨域文档数据即时通讯,后者擅长针对跨域服务端数据通讯,p