
1、使用form表单,form表单通常用于采集用户输入,再传输给php脚本,进行 *** 作。form表单的特点是必须由用户点击提交按钮,才可以被服务器接收。注意form最重要的两个属性:action,method。
2、使用ajax对象,与服务器建立交互。与form的不同在于,ajax是向服务器发送某些请求,ajax的使用大致概括为以下四点。
创建xml请求对象
建立事件模型(xml.onreadystatechange=function())
设置(open)
发送(send)
ajax的特点是无需用户确认,就会自动执行(如果你将发送这一事件封装起来,也可以做到特定条件触发)
使用ajax最应注意的是,在open时设置的第三个参数,true,即异步 *** 作,这意味所有依赖于请求数据的 *** 作都应放在 onreadystatechange=function() 里,否则在数据请求未完成时去执行相关 *** 作会造成错误
3、使用cookie
cookie作为存储在用户计算机中的小型文本,可以用来存储少量数据。而php中提供了超级全局数组$_COOKIE['demo']用于访问cookiie,但这仅适用少量的数据交互
BAT的后端开发工程师不请自来。
这个问题的本质其实是在前后端分离的大趋势下,前后端开发者如何将各自的代码串联起来,对外发布一个完整的服务。
接下来,我们就分别从前端和后端来介绍。
后端
后端又称服务端,是负责接收前端的请求,然后进行逻辑处理,去读写数据库,最后将结果返回的功能节点。目前在前后端分离的大前提下,不仅是java,php,Python等等大多是通过开放api/
这个url下,path分别为A和B,然后这两个controller内又各自有两个方法,指定的path注解分别为A1,A2,B1,B2,那么当前端调用api/A/A1
的时候,就会去执行Acontroller下的A1函数,然后再将这个函数的执行结果作为response返回给前端了。前端
前端通常负责的工作除了渲染界面,还有两部分组成:
1捕捉用户的 *** 作,
2根据 *** 作请求后端api并获取结果展示给用户。
我们前面介绍的前后端交互,就是第二部分的工作。前端通过调用后端提供的api来传递和获取数据,最后再将数据渲染到页面上。
不过值得提一句的是,html并不负责与java交互,从基础来说,html只负责页面架构,具体捕捉用户 *** 作,获取数据等步骤,是由JavaScript来实现的。
//①ji与android交互//js调用android方法
window.类.方法名称(参数1,参数2)
//android调用js方法(loginIn:方法名称,uname:参数)
//activity.loadUrl("javascript:loginIn('" + uname + "')")
//②js与ios交互
//js调用ios方法(objc:协议)
window.location.href='objc://方法名称|参数1|参数2'
//ios调用js方法:
同android
其中:android的activity如下:
@Overridepublic void onCreate(Bundle savedInstanceState) {
// setFullScreen(true)
Intent intent = new Intent(getApplicationContext(),
SplashActivity.class)
startActivity(intent)
super.onCreate(savedInstanceState)
super.init()
// Set by <content src="index.html" /> in config.xml
activity = this
// this.appView.setBackgroundResource(R.drawable.welcome)// 设置背景图片
//
// super.setIntegerProperty("splashscreen", R.drawable.welcome)
// 设置闪屏背景图片
// super.setBooleanProperty(name, value)
// super.loadUrl("这里是html页面的路径")
super.appView.addJavascriptInterface(new Fu(), "这里是类名(js中需要通过这个类名访问android方法)")
super.loadUrl(Config.getStartUrl())
// super.loadUrl("file:///android_asset/www/index.html")
// mController.openShare(activity, false)
// try {
// getToken()
// } catch (NoSuchAlgorithmException e) {
// // TODO Auto-generated catch block
// //e.printStackTrace()
// }
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)