客户端服务器

JSON和JSONP (含jQuery实例)(share)

夙愿已清 提交于 2020-02-01 02:53:59
来源: http://www.cnblogs.com/dowinning/archive/2012/04/19/json-jsonp-jquery.html 前言: 说到AJAX就会不可避免的面临两个问题,第一个是AJAX以何种格式来交换数据?第二个是跨域的需求如何解决?这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域可以通过服务器端代理来解决。 但到目前为止最被推崇或者说首选的方案还是用JSON来传数据,靠JSONP来跨域。而这就是本文将要讲述的内容。 JSON和JSONP虽然只有一个字母的差别,但其实他们根本不是一回事儿: JSON是一种数据交换格式,而JSONP是一种依靠开发人员的聪明才智创造出的一种非官方跨域数据交互协议 。我们拿最近比较火的谍战片来打个比方,JSON是地下党们用来书写和交换情报的“暗号”,而JSONP则是把用暗号书写的情报传递给自己同志时使用的接头方式。看到没?一个是描述信息的格式,一个是信息传递双方约定的方法。 什么是JSON 前面简单说了一下,JSON是一种基于文本的数据交换方式,或者叫做数据描述格式。 JSON的优点: 1、基于纯文本,跨平台传递极其简单; 2、Javascript原生支持,后台语言几乎全部支持; 3、轻量级数据格式,占用字符数量极少,特别适合互联网传递; 4、可读性较强

json和jsonp的使用格式

一个人想着一个人 提交于 2020-02-01 02:52:07
最近一直在看关于json和jsonp的区别和各自的用法、优缺点! 下面是我看到过解释最清楚的一片文章 说到AJAX就会不可避免的面临两个问题, 第一个是AJAX以何种格式来交换数据?第二个是跨域的需求如何解决? 这两个问题目前都有不同的解决方案,比如数据可以用自定义字符串或者用XML来描述,跨域可以通过服务器端代理来解决。 但到目前为止最被推崇或者说首选的方案还是 用JSON来传数据,靠JSONP来跨域 。而这就是本文将要讲述的内容。 JSON和JSONP虽然只有一个字母的差别,但其实他们根本不是一回事儿:JSON是一种数据交换格式,而JSONP是一种依靠开发人员的聪明才智创造出的一种非官方跨域数据交互协议。我们拿最近比较火的谍战片来打个比方,JSON是地下党们用来书写和交换情报的“暗号”,而JSONP则是把用暗号书写的情报传递给自己同志时使用的接头方式。看到没?一个是描述信息的格式,一个是信息传递双方约定的方法。 什么是JSON? 前面简单说了一下,JSON是一种基于文本的数据交换方式,或者叫做数据描述格式,你是否该选用他首先肯定要关注它所拥有的优点。 JSON的优点: 1、基于纯文本,跨平台传递极其简单; 2、Javascript原生支持,后台语言几乎全部支持; 3、轻量级数据格式,占用字符数量极少,特别适合互联网传递; 4、可读性较强,虽然比不上XML那么一目了然

windows Telnet 客户端常用命令介绍

我的未来我决定 提交于 2020-02-01 01:28:41
Telnet协议是TCP/IP协议家族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。要开始一个telnet会话,必须输入用户名和密码来登录服务器。Telnet是常用的远程控制Web服务器的方法。 Windows怎么执行 telnet 命令? 1、按 WIN+R 打开运行窗口,输入CMD,回车。 2、在出来的DOS界面里,输入telnet测试端口命令: telnet IP 端口 或者 telnet 域名 端口 回车。 如果端口关闭或者无法连接,则显示不能打开到主机的链接,链接失败;端口打开的情况下,链接成功,则进入telnet页面(全黑的),证明端口可用。 Telnet 客户端常用命令: open : 使用 openhostname 可以建立到主机的 Telnet 连接。 close : 使用命令 close 命令可以关闭现有的 Telnet 连接。 display : 使用 display 命令可以查看 Telnet 客户端的当前设置。 send : 使用 send 命令可以向 Telnet 服务器发送命令。支持以下命令:

HTML协议

拥有回忆 提交于 2020-02-01 01:16:18
HTTP协议 HTTP协议简介 超文本传输协议(英文: H yper T ext T ransfer P rotocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。 HTTP的发展是由蒂姆·伯纳斯-李于1989年在欧洲核子研究组织(CERN)所发起。HTTP的标准制定由万维网协会(World Wide Web Consortium,W3C)和互联网工程任务组(Internet Engineering Task Force,IETF)进行协调,最终发布了一系列的RFC,其中最著名的是1999年6月公布的 RFC 2616,定义了HTTP协议中现今广泛使用的一个版本——HTTP 1.1。 2014年12月,互联网工程任务组(IETF)的Hypertext Transfer Protocol Bis(httpbis)工作小组将HTTP/2标准提议递交至IESG进行讨论,于2015年2月17日被批准。 HTTP/2标准于2015年5月以RFC 7540正式发表,取代HTTP 1.1成为HTTP的实现标准。 HTTP协议概述 HTTP是一个客户端终端(用户)和服务器端(网站)请求和应答的标准(TCP)。通过使用网页浏览器、网络爬虫或者其它的工具,客户端发起一个HTTP请求到服务器上指定端口(默认端口为80)

Node之使用dgram模块实现基于UDP的数据通信

别说谁变了你拦得住时间么 提交于 2020-02-01 01:06:55
使用dgram模块实现基于UDP的数据通信 TCP是一种基于连接的协议,在进行通信前,首先要求客户端与服务器端建立一条用于通信的连接。而UDP是一种面向非连接的协议,在进行通信前,不要求首先建立客户端与服务器端之间的连接,可以直接把数据包发送给对方。基于这个原因,UPD也是一种不可靠的协议,但是其传输速度比TCP更快,因此更适用于实时通信的场合。 在Node.js中,提供了dgram模块,用于创建UPD服务器与客户端,以及实现UDP服务器与客户端之间的通信。 创建UDP服务器与客户端 在dgram模块中,可以使用createSocket方法创建一个用于实现UDP通信的socket端口对象 var socket=dgram.createSocket(type,[callback]) type:用于指定进行UDP通信时使用的协议类型,可指定值为“upd4”或“upd6”。 callback:用于指定当从该端口接收到数据时调用的回调函数,在该回调函数中,可以使用两个参数。msg参数值为一个Buffer对象,其中存放了接收到的数据。rinfo参数值也为一个对象,该对象所具有的属性及属性值如下: address:属性值为发送者所使用的地址,例如127.0.0.1。 family:属性值为一个标识了发送者所使用的地址是IPv4地址还是IPv6地址的字符串,例如“IPv4”。 port

Udp简单的服务器与客户端07

爷,独闯天下 提交于 2020-01-31 10:52:31
UDP协议: UDP协议传输数据是不可靠的,在java中,java.util.DatagramSocket负责接收和发送UDP数据报,java.util.DatagramPacket表示UDP数据表。每个 DatagramSocket与一个本底地址绑定,每个DatagramSocket可以把UDP数据报发送给任意一个远程DatagramSocket,也可以接收来自任意一个远程的 DatagramSocket的UDP数据报。在UDP数据报中包含了目的地址信息,DatagramSocket根据该信息把数据报发送到目的地 UDP服务端 public class EchoServer{ private int port = 8089; private DatagramSocket socket; public EchoServer()throws IOException{ socket = new DatagramSocket(port); System.out.println("服务端启动"); } public String ehco(String msg){ return "ehco:"+msg; } public void service(){ while(true){ try { //创建一个数据报对象 DatagramPacket packet = new

Tcp/Ip协议

假如想象 提交于 2020-01-31 07:22:32
网络由下往上分为: 物理层-- 数据链路层-- 网络层-- IP协议 传输层-- TCP协议 会话层-- 表示层和应用层-- HTTP协议 1、TCP/IP连接 手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。 建立起一个TCP连接需要经过“三次握手”: 第一次握手:客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; 第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态; 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 握手过程中传送的包里不包含数据,三次握手完毕后,客户端与服务器才正式开始传送数据。理想状态下,TCP连接一旦建立,在通信双方中的任何一方主动关闭连接之前,TCP 连接都将被一直保持下去。断开连接时服务器和客户端均可以主动发起断开TCP连接的请求,断开过程需要经过“四次握手”(过程就不细写了,就是服务器和客户端交互,最终确定断开). 2、HTTP连接

iOS开发——网络篇——HTTP/NSURLConnection(请求、响应)、http响应状态码大全

你。 提交于 2020-01-31 01:12:57
一、网络基础 1、基本概念 > 为什么要学习网络编程 在移动互联网时代,移动应用的特征有 几乎所有应用都需要用到网络,比如QQ、微博、网易新闻、优酷、百度地图 只有通过网络跟外界进行数据交互、数据更新,应用才能保持新鲜、活力 如果没有了网络,也就缺少了数据变化,无论外观多么华丽,终将变成一潭死水 移动网络应用 = 良好的UI + 良好的用户体验 + 实时更新的数据 新闻:网易新闻、新浪新闻、搜狐新闻、腾讯新闻 视频:优酷、百度视频、搜狐视频、爱奇艺视频 音乐:QQ音乐、百度音乐、酷狗音乐、酷我音乐 LBS:百度地图、高德地图、大众点评、墨迹天气、滴滴打车 电商:淘宝、京东商城、天猫、蘑菇街、凡客诚品、美丽说 社交:QQ、微信、微博、陌陌、比邻 为什么要学习网络编程 网络编程是一种实时更新应用数据的常用手段 网络编程是开发优秀网络应用的前提和基础 > 基本概念 在网络编程中,有几个必须掌握的基本概念 客户端(Client):移动应用(iOS、android等应用) 服务器(Server):为客户端提供服务、提供数据、提供资源的机器 请求(Request):客户端向服务器索取数据的一种行为 响应(Response):服务器对客户端的请求做出的反应,一般指返回数据给客户端 作为移动开发工程师,主要的精力都是放在客户端开发 2、服务器 按照软件开发阶段来分,服务器可以大致分为2种

Linux Kernel 2.6.9源码分析 –- connect

℡╲_俬逩灬. 提交于 2020-01-30 16:20:34
Linux Kernel 2.6.9源码分析 –- connect (未完待续) 首先来看下connect的原型:int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen); 参数说明: sockfd:客户端的socket描述符 addr:服务器的socket地址 addrlen:socket地址的长度 客户端通过调用connect函数来建立与TCP服务器的连接。 下面再来看下sys_connect(): asmlinkage long sys_connect ( int fd , struct sockaddr __user * uservaddr , int addrlen ) { struct socket * sock ; char address [ MAX_SOCK_ADDR ] ; int err ; sock = sockfd_lookup ( fd , & err ) ; if ( ! sock ) goto out ; err = move_addr_to_kernel ( uservaddr , addrlen , address ) ; if ( err < 0 ) goto out_put ; err = security_socket_connect ( sock , (

JAVA单排日记-2020/1/30-网络编程_TCP通信

断了今生、忘了曾经 提交于 2020-01-30 13:45:40
1.概述 TCP通信能实现两台计算机之间的数据( 字节流 )交互,通信的两端,要严格区分为 客户端(Client)与服务端(Server) 两端通信时步骤: 服务端程序,需要事先启动,等待客户端的连接。 客户端主动连接服务器端,连接成功才能通信。服务端不可以主动连接客户端。 2.TCP通信的代码实现 2.1客户端 Socket 类 Socket 类:该类实现客户端套接字。套接字指的是两台设备之间通讯的端点,是包含了IP和端口号的网络单位。 构造方法 Socket s1 = new Socket ( String 服务器IP , int 服务器端口号 ) ; 成员方法 服务器与客户端不能创建自己的流对象交互,必须使用以下 Socket 类中提供的成员方法 OutputStream out = s1 . getOutputStream ( ) ; 获取字节输出流 InputStream in = s1 . getInputStream ( ) ; 获取字节输入流 s1 . close ( ) ; 关闭套接字 使用步骤 1.创建 Socket 类对象,构造方法中填入服务器的IP与端口号 2.使用 Socket 对象的 getOutputStream() 方法,获取网络字节输出流 OutputStream 对象 3.使用 OutputStream 对象的 write() 方法