AJAX.basic
之前在项目中使用ajax都是通过jQuery的Ajax API来进行的,今天试了一下通过基本的JavaScript来进行ajax请求,将代码记录下来:
- <%@ page pageEncoding="UTF-8"%>
- >
- <html>
- <head>
- <title>Ajaxtitle>
- <script type="text/javascript" src="media/js/jquery.js" mce_src="media/js/jquery.js">script>
- <script type="text/javascript" src="media/ajax.js" mce_src="media/ajax.js">script>
- head>
- <body>
- Ajax.jsp<br/>
- <div id="msg" style="width:400px;height:200px;margin:1em;padding:1em;border:1px solid #DD6900">
- 啦啦啦
- div>
- <button id="start" style="margin:1em;border:1px solid #DD6900" mce_style="margin:1em;border:1px solid #DD6900">Start Ajaxbutton>
- body>
- html>
- var xmlHttp;
- function createXMLHttpRequest() {
- if (window.ActiveXObject) {
- xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
- }
- else if (window.XMLHttpRequest) {
- xmlHttp = new XMLHttpRequest();
- }
- }
- var okFunc = function(){
- if(xmlHttp.readyState == 4) {
- if(xmlHttp.status == 200) {
- $("#msg").html(xmlHttp.responseText);
- }
- }
- }
- var startAjax = function(){
- $("#msg").html("Loading...");
- createXMLHttpRequest();
- if( !xmlHttp){
- return alert('create failed');
- }
- xmlHttp.open("POST", "Test", true);
- xmlHttp.onreadystatechange = okFunc;
- xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
- xmlHttp.send(document);
- }
- $(document).ready(function(){
- $("#start").click(startAjax);
- $.post("Test",{'name':'Hello','age':22});
- });
在服务器端的Servlet:
- package ajax;
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.io.PrintWriter;
- import javax.servlet.ServletException;
- import javax.servlet.http.HttpServlet;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- public class Test extends HttpServlet {
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- BufferedReader reader = request.getReader();
- String line = null;
- while((line = reader.readLine()) != null) {
- System.out.println(line);
- }
- System.out.println("Start writing");
- response.setContentType("text/html");
- PrintWriter out = response.getWriter();
- out.println(");
- out.flush();
- out.close();
- }
- @Override
- protected void doPost(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, IOException {
- doGet(req, resp);
- }
- }
AJAX.basic的更多相关文章
- ajax basic 认证
//需要Base64见:http://www.webtoolkit.info/javascript-base64.html function make_base_auth(user, password ...
- Jquery ajax basic
$.ajax({ url: "test.aspx?action=testaction", contentType: "application/json; charset= ...
- web 端 gantt组件选型
gantt - 甘特图 甘特图(Gantt chart)又称为横道图.条状图(Bar chart).其通过条状图来显示项目,进度,和其他时间相关的系统进展的内在关系随着时间进展的情况.以提出者亨利·L ...
- ajax 上传文件给webapi(带basic认证)
$('#btnupload').on('click', function () { var fd = new FormData(); ]; fd.append("report_id" ...
- C#进阶系列——WebApi 身份认证解决方案:Basic基础认证
前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人只要知道了接口的url,都能够模拟http请求去访问我们的服务接口,从而去增删改查数据库,这后果想 ...
- WebApi身份认证解决方案:Basic基础认证
前言:最近,讨论到数据库安全的问题,于是就引出了WebApi服务没有加任何验证的问题.也就是说,任何人只要知道了接口的url,都能够模拟http请求去访问我们的服务接口,从而去增删改查数据库,这后果想 ...
- 新一代Ajax API --fetch
之前 师傅跟我提过 一个新的Ajax API fetch 今天看到一篇关于fetch的文章,受益匪浅. XMLHttpRequest并不是专为Ajax而设计的,虽然各种框架对XHR的封装已经足够好用 ...
- datatables ajax后端请求那些坑
在对datatables做后端数据填充的时候,遇到一个,翻页问题.在多次操作翻页后,总是提示加载中.反了很多博客没有找到原因. 经过测试,发现原来自己坑了自己. 代码如下: datatables : ...
- h5 js 图片预览并判断 ajax上传
//建立一個可存取到該file的url function getObjectURL(file) { var url = null; if (window.createObjectURL != unde ...
随机推荐
- plsql developer中,清除登录历史
需求描述: 在使用plsql developer的时候,发现登录的时候,有太多的历史,想要把这些登录历史清除掉, 在此记录下. 操作过程: 1.登录plsql developer(或者在登录时取消也会 ...
- Appium - WebView測试(Android)
Appium - WebView測试 作者: Max.Bai 时间: 2015/07 Appium - WebView測试(Android) 如今App都是混合型的.有原生的也包括WebView的,a ...
- Entity Framework底层操作封装V2版本号(4)
这个版本号里面.由于涉及到了多库的操作.原有的系统方法不能做到这种事情了.所以这里有了一点差别 这个类的主要用作就是,连接字符串的作用,默认是指向默认配置里面的,可是你能够指向其它的连接 using ...
- angularjs基础——变量绑定
1)弄一个ng-app(angularjs 应用) 2)在里面用ng-model(angularjs 模型)就可以定义一个模型变量 3)使用模版方法就可以输出变量了(例如:{{name}}) 示例: ...
- Kafka中Producer端封装自定义消息
我们知道KeywordMessage就是被kafka发送和存储的对象.所以只需要模拟出这个就可以发送自定义消息了. 比如我需要将用户的id,user,age,address和访问ip和访问date记录 ...
- @property装饰器的用法【python】
转自:http://www.jb51.net/article/65052.htm python官方介绍:https://docs.python.org/release/2.6/library/func ...
- mysql的if null 的用法
<!-- 查询 分页查询 --> <select id="queryByPageList" resultMap="weixinActivityResul ...
- 基于麒麟座开发板2.0的MQTT实现例程
链接--->https://sanwen8.cn/p/649shZ1.html OneNET现已全面适配标准MQTT协议,相信这一功能的增加会**便于开发者进行设备的接入. OneNET提供了M ...
- C++类中的static数据成员,static成员函数
C++类中谈到static,我们可以在类中定义static成员,static成员函数!C++primer里面讲过:static成员它不像普通的数据成员,static数据成员独立于该类的任意对象而存在, ...
- Android 实现动态匹配输入的内容 AutoCompleteTextView和MultiAutoCompleteTextView
AutoCompleteTextView1.功能:动态匹配输入的内容,如百度搜索引擎当输入文本时可以根据内容显示匹配的热门信息.2.独特属性:android:completionThreshold 设 ...