网络

iOS网络编程:网络交互数据格式解析之json

混江龙づ霸主 提交于 2019-12-07 10:23:30
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式, 目前在网络交互过程中有着举足轻重的地位。如果您对 json 还有什么不清楚的话建议去看 json百度百科 。 在iOS平台上,Apple 从 iOS 5.0 才开始提供原生的json生成和解析的API,使用起来 非常方便,但这样就无法为iOS 5.0 之前版本的用户服务了。对于iOS 5.0以前的系统,json的使用得益于无数无私的开源拥护者的贡献。估计大多数开发者现在还不会直接抛弃仍在使用 5.0 以前版本的用户,所以这里优先介绍3种主要的开源库的使用,然后再介绍新的原生API的使用。 测试数据我们使用 国家气象局提供的天气预报接口 : http://m.weather.com.cn/data/101010100.html http://www.weather.com.cn/data/cityinfo/101010100.html http://www.weather.com.cn/data/sk/101010100.html 您可以用浏览器打开,看看这三个地址到底是什么--其实你可以分别看到3个字符串,没错,你才对了,这就是我们测试用的 json 数据。 我们打开 github 搜索关键字 json ,程序语言选择 Objective-C ;可以得到 n 页结果

自动检测iOS网络并可跳转至设置界面设置网络

狂风中的少年 提交于 2019-12-06 05:57:32
转载网址:http://blog.sina.com.cn/s/blog_6bb90d70010123h8.html 还没有对这篇文章中提到的 尝试过,谁用过之后 可以达到效果,吱一声哈! 若不想写繁琐的网络状况判断代码,并且应用程序能自动在无网络时弹出可跳转到系统设置页面的对话框,那么可以考虑这么做。 在项目中相应的**info.plist文件中增加一个关键字: <key>SBUsesNetwork</key> <true/> 应用程序就会自动检测网络状况,在网络异常的情况下,会弹出网络设置对话框提醒用户是否进行网络设置,并且可以跳转至系统设置中进行昂立设置。 其实在IOS5.1+之后,苹果就删除了程序跳转至设置界面的功能了,不知道为什么。。。 所以自己写代码也是不可能实现的,只能够对网络进行监听,然后提醒用户网络链接异常而已。 下面是监听网络改变的代码,可以参考一下: 在AppDelegate.m中写如下代码: [cpp] view plain copy - ( BOOL )application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[[UIWindow alloc] initWithFrame:[

Android网络通信库Volley简介

吃可爱长大的小学妹 提交于 2019-12-04 17:44:07
1. 什么是Volley 在这之前,我们在程序中需要和网络通信的时候,大体使用的东西莫过于AsyncTaskLoader,HttpURLConnection,AsyncTask,HTTPClient(Apache)等,今年的Google I/O 2013上,Volley发布了。Volley是Android平台上的网络通信库,能使网络通信更快,更简单,更健壮。 这是Volley名称的由来: a burst or emission of many things or a large amount at once 在Google IO的演讲上,其配图是一幅发射火弓箭的图,有点类似流星。见下图 其实,从这幅图,我们也可以看出来,Volley特别适合数据量不大但是通信频繁的场景。 1.1. Volley引入的背景 在以前,我们可能面临如下很多麻烦的问题。 比如以前从网上下载图片的步骤可能是这样的流程: 在ListAdapter#getView()里开始图像的读取。 通过AsyncTask等机制使用HttpURLConnection从服务器去的图片资源 在AsyncTask#onPostExecute()里设置相应ImageView的属性。 而在Volley下,只需要一个函数即可,详细见后面的例子。 再比如,屏幕旋转的时候,有时候会导致再次从网络取得数据。为了避免这种不必要的网络访问

网络安全技术分析

不问归期 提交于 2019-12-04 12:43:09
现在各种云应用的非常广,这也是今后的一个趋势。同时云安全也备受大家瞩目。前不久csdn等多家网站用户 信息被黑客获取。据悉,美国数据安全损失居全球之首 年损失960亿,这一系列无不刺激这我们的神经, 如今好像没有什么安全的方式,只有尽可能的减少漏洞和bug,才能降低因数据窃取或网络攻击带来的 损失。 在实现一种安全策略之前,首先要在理论上行的通,对系统的架构什么的必须设计的合理,然后就 要在实际操作时试着检测漏洞或bug,最好是试着攻击自己的网络,看能否达到一个抗攻击的标准。 现在存在的网络安全技术主要有: 1、防火墙技术 网络防火墙技术是一种用来加强网络之间访问控制,防止外部网络用户以非法手段通过外部网络 进入内部网络,访问内部网络资源,保护内部网络操作环境的特殊网络互联设备。防火墙位置不固定, 不同地方有各自的用途。典型的防火墙建立在一个服务器/主机机器上,亦称“堡垒”,是一个多边协议路由器,这个堡垒有两个网络联接:一边与内部网相联,另一边与Internet相联。它的主要作用除了防止未经授权的来自或对Internet的访问外,还包括为安全管理提供详细的系统活动的记录。其缺点是无法防范来自防火墙以外的攻击,不能防止内部的威胁,也不能 完全防止病毒,以及无法防范数据驱动型攻击。 2、加密技术 加密技术分为两类:对称加密和非对称加密技术。对称加密技术中

Android 网络(一)

China☆狼群 提交于 2019-12-04 05:58:44
一、Http协议 1、HTTP简介 大多数的Android应用程序都会使用HTTP协议来发送和接收网络数据,Android中主要提供了两种方式来进行HTTP操作,HttpURLConnection和HttpClient。所以首先介绍下Http协议。HTTP(HyperText Transfer Protocol,超文本传输协议) 是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。HTTP协议采用了请求/响应模型。通常,由HTTP客户端发起一个请求,建立一个到服务器指定端口(默认是80端口)的TCP连接,HTTP服务器则在那个端口监听客户端发送过来的请求。一旦收到请求,服务器(向客户端)发回一个状态行和响应消息,最后消息传送完毕时,可以关闭客户端和服务器端的连接。 2、HTTP消息 Http消息由从客户机到服务器的请求和从服务器到客户机的响应构成。这两种类型的消息均由一个起始行,一个或者多个头域,一个指示头域结束的空行和可选的消息体组成。HTTP的头域包括通用头,请求头,响应头和实体头四个部分。 请求消息格式如下: 请求行 - 通用信息头 - 请求头 - 实体头 - 消息主体 如下所示: 应答消息格式如下: 状态行 - 通用信息头 - 响应头 - 实体头 - 消息主体 如下所示: 3、请求方法 注: Android

Docker拥抱k8s早有预兆,Docker现何去何从?

*爱你&永不变心* 提交于 2019-12-02 04:47:08
导读 本文由Rancher Labs CEO及联合创始人梁胜博士写于前往参加DockerCon之前。从各家容器编排方案均很不成熟的初期,到三足鼎立的编排之战,到如今k8s似已全面胜利,作为整个发展历程的参与者与见证者,回顾这几年容器领域发展和Rancher的发展与选择,梁胜博士分享了他的一些看法。 Docker宣布支持Kubetnetes,拥抱昔日对手,而这一点在回溯过去时就早有苗头。纵观Docker在编排领域的发展之路,大概这一决定是历史的必然。这篇文章或许能从另一种视角带你看看这个业界目前最热议的话题。 目前Docker技术得到了广泛应用,在大量需求的催生下,我们创造了Rancher,在过去三年的各届DockerCon上,Rancher都得到了很多来自用户的热情欢迎和积极反响。 DockerCon有它的特别之处——不仅在于它将主要行业玩家全都召集到了一块,更是因为DockerCon是为数不多的、参会者中用户数量远超供应商数量的技术大会。能够一下子遇到这么多用户,无论是参会还是赞助都十分值得。和我们的用户交谈,听取他们的想法,这激励并启发着我们更好地改进Rancher产品。 Docker的技术革新正处于关键期,因此我对于Docker将在今年DockerCon EU公布的内容非常感兴趣。最近我们发布了Rancher 2.0 Tech Preview

android中网络操作使用总结(http)

隐身守侯 提交于 2019-12-01 18:35:55
Android是作为智能手机的操作系统,我们开发的应用,大多数也都需要连接网络,通过网络发送数据、获取数据,因此作为一个应用开发者必须熟悉怎么进行网络访问与连接。通常android中进行网络连接一般是使用scoket或者http,http是最多的情况,这里,我来总结下,怎么进行http网络访问操作。 android是采用java语言进行开发的,android的包中包含java的URLConnection和apache 的httpclient,因此我们可以使用这两个工具进行网络连接和操作。同时,为了控制是否允许程序连接网络,我们开发应用时,需要在Manifest文件中配置申请网络连接的权限,代码如下。 <uses-permission android:name="android.permission.INTERNET"/> 使用URLConnection连接网络 URLConnection为java.net包中提供的网络访问,支持http,https,ftp等,进行http连接时,使用HttpURLConnection即可,示例代码如下: URL url = new URL("http://www.android.com/"); HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();

VirtualBox的四种网络接入模式

浪子不回头ぞ 提交于 2019-12-01 17:40:40
VirtualBox虚拟机网络设置 1、NAT 网络地址转换模式(Network Address Translation) 2、Bridged Adapter 桥接模式 3、Internal 内部网络模式 4、Host-only Adapter 主机模式 一、原理 1、 网络地址转换模式(Network Address Translation) NAT模式是最简单的实现虚拟机上网的方式,你可以这样理解:Vhost访问网络的所有数据都是由主机提供的,vhost并不真实存在于网络中,主机与网络中的任何机器都不能查看和访问到Vhost的存在。 虚拟机与主机关系:只能单向访问,虚拟机可以通过网络访问到主机,主机无法通过网络访问到虚拟机。虚拟机与网络中其他主机的关系:只能单向访问,虚拟机可以访问到网络中其他主机,其他主机不能通过网络访问到虚拟机。 虚拟机与虚拟机之间的关系:相互不能访问,虚拟机与虚拟机各自完全独立,相互间无法通过网络访问彼此。 IP:10.0.2.15 网关:10.0.2.2 DNS:10.0.2.3 一台虚拟机的多个网卡可以被设定使用 NAT, 第一个网卡连接了到专用网 10.0.2.0,第二个网卡连接到专用网络 10.0.3.0,等等。默认得到的客户端ip(IP Address)是10.0.2.15,网关(Gateway)是10.0.2.2,域名服务器(DNS)是10.0

读书博客网站靠打赏插件营收的方案是否具备技术可行性[图]

99封情书 提交于 2019-11-30 22:13:23
今年,我开始着手读书博客的研究,一直以来,都想写一个关于读书主题的博客网站,本人对于教育行业还是非常喜欢的,古诗词、古典文学、IT技术学习,都感兴趣。但是作为一个技术小白,只能从头学习了,今天和大家一起分享学习心得。 博客网站一般都以博主的写作为主,内容一般都比较少,但质量还不错,那么,是否可以通过打赏插件的打赏功能来进行营收?这个方案是否具备可行性?我觉得可行性不是很大,除非你的博客文章非常吸引人,具备超高的粉丝受众,这个可能性是不大的,我们知道,目前中国最好的博客也没有几个,他们也似乎无非通过打赏功能来进行营收,何况我们普通博客。 为什么会想到这个点子呢?因为我发现简书等网站是采用的这种模式,不过简书做的确实比较成功,这是我们普通站点无法达到的高度。作为新博客,我用“遇见未知的自己http://www.simayi.net/duhougan/1525.html读后感500字”为案例来说明,这篇文章虽然对学生还是有帮助的,但对于大多数读者来说,不会产生打赏的冲动,因为知识无法打动人,震撼人的心灵,打赏这种心理是需要一定的条件才会产生的,这是基础。 打赏插件的制作是否麻烦?回答是肯定的,打赏功能在微信等站点上使用,改变了人们对打赏和捐助的方式,这是革命性的用户体验,而申请打赏功能,需要支付接口,一般来说,对于企业和组织结构比较容易,对于我们个人网站是不具备可行性的

java基础专栏—java网络编程

十年热恋 提交于 2019-11-30 01:52:30
java网络编程 ​ 在网络成层中TCP对应于四层 链路层(物理通道) 通常是对网络连接设备的驱动协议,例如对光纤和都对网线的驱动不一样 网络层(核心层) TCP/IP协议的核心,他用于将数据分组 发送 传输层(主要是程序间通信) 包括TCP,UDP 应用层 主要是负责应用程序的协议。如HTTP,FTP IP地址和端口号 ​ 用来区分计算机的唯一标识(IP地址) 手动写的 分配的 采用八个二进制位表示一个段(所以最大只有255),用四个字节标识一个电脑 192.168.105.222 ==192.168==:是局域的IP地址,以内的电脑都是联通的 ==本机地址== :127.0.0.1,表示自己的地址 ==ping操作==:ping也属于一个通信协议,是TCP/IP协议的一部分,用于检查网络通路是否可用 计算机之间的数据通讯 端口:通讯是为了避免不同程序之间的数据发错,导致丢失等等,操作系统实现的 逻辑编号 ,每个应用程序都有被分配的端口号。 UDP协议 ​ UDP是无连接通信协议,既在传输数据时。数据的发送端和接受端不建立逻辑连接,不确认接受端是否存在,也不会接受反馈。 UDP协议消耗资源小,通信效率高,一般用于音频,视频和普通护具的传输 使用UDP不能确保数据的完整,可能会丢失 数据大小被限制在64K内 InetAddress java.net 中的类都与互联网有关系