当前位置: 首页 > news >正文

苏州网站开发培训班wordpress多用户博客系统

苏州网站开发培训班,wordpress多用户博客系统,vps上的网站运行太慢,创建app软件网络编程 HTTP网络编程IPAddress IP地址类WebClient类WebRequest类和WebResponse类 WebBrowser网页浏览器控件TCP网络编程TcpClient类TcpListener类NetworkStream类Socket类 HTTP网络编程 IPAddress IP地址类 IPAddress类代表IP地址,可在十进制表示法和实际的整数…

网络编程

  • HTTP网络编程
    • IPAddress IP地址类
    • WebClient类
    • WebRequest类和WebResponse类
  • WebBrowser网页浏览器控件
  • TCP网络编程
    • TcpClient类
    • TcpListener类
    • NetworkStream类
    • Socket类

HTTP网络编程

IPAddress IP地址类

IPAddress类代表IP地址,可在十进制表示法和实际的整数地址之间进行转换。IPHostEntry类封装了与主机相关的信息。Dns类可以检索IP地址和获取主机名。

域名解析示例:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Net.Sockets;
using System.Net;namespace NetWorkDemo
{public partial class FormDNS : Form{public FormDNS(){InitializeComponent();}private void button1_Click(object sender, EventArgs e){IPHostEntry host = Dns.Resolve(textBox1.Text);foreach (IPAddress addr in host.AddressList){long ip = addr.Address;listBox1.Items.Add(addr.ToString());listBox1.Items.Add(ip.ToString());}textBox2.Text = host.HostName;textBox3.Text = IPAddress.Broadcast.ToString();}}
}

在这里插入图片描述

WebClient类

WebClient类提供用于将数据发送到由URI标识的资源及从这样的资源接收数据的常用方法。
WebClient类常用方法:

名称说明
DownloadString以字符串形式下载位于指定URI的资源
OpenRead打开流向指定资源的可读流
OpenWrite打开一个流,以将数据写入指定的资源。这些方法不会阻止调用线程
UploadString将指定的字符串上载到指定的资源。这些方法不会阻止调用线程

WebClient类常用属性:

名称说明
IsBusy获取一个值,该值指示某一Web请求是否正在进行中
BaseAddress获取或设置WebClient发出请求的基URI

WebRequest类和WebResponse类

WebClient类的使用比较简单,单功能有限,而且不能提供身份验证相关信息。如果使用某种特定协议,需要结合使用WebReques类和WebResponse类。WebRequest类用于发出对一个URI的请求,是抽象类。
WebResquest类主要方法:

名称说明
Create()创建对象
GetResponse()在子类中被重写时,返回对Internet请求的响应
GetRequestStream()在子类中被重写时,返回用于将数据写入Internet资源的Stream

WebResquest类主要属性:

名称说明
ContentLength在子类中被重写时,获取或设置所发送的请求数据的内容长度
ContentType在子类中被重写时,获取或设置所发送的请求数据的内容类型
Credentials在子类中被重写时,获取或设置用于对Internet资源请求进行身份验证的网络凭证
Method在子类中被重写时,或取或设置要在此请求中使用的协议方法
RequestUri获取与请求关联的Internet资源的URI
Headers在子类中被重写时,获取或设置与请求关联的表头名称/值对的集合

WebResponse类的主要成员:

名称说明
GetResponseStream在子类中被重写时,从Internet资源返回数据流
ContentLength在子类中被重写时,获取或设置所发送的请求数据的内容长度
ContentType在子类中被重写时,获取或设置所发送的请求数据的内容类型
Headers在子类被重写时,获取或设置与请求关联的标头名称/值对的集合

下载文件和获取Header信息示例:

using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace NetWorkDemo
{public partial class FormDownload : Form{public FormDownload(){InitializeComponent();}/// <summary>/// 下载文件/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void button1_Click(object sender, EventArgs e){WebClient client = new WebClient();Stream s = client.OpenRead(textBox1.Text);StreamReader reader = new StreamReader(s);richTextBox1.Text = reader.ReadToEnd();reader.Close();s.Close();}/// <summary>/// 获取Header头信息/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void button2_Click(object sender, EventArgs e){HttpWebRequest req = (HttpWebRequest)WebRequest.Create(textBox1.Text);HttpWebResponse res = (HttpWebResponse)req.GetResponse();NameValueCollection headers = res.Headers;foreach (string name in headers){listBox1.Items.Add(name + "------" + headers[name]);}}}
}

在这里插入图片描述

WebBrowser网页浏览器控件

将WebBrowser控件拖拽到窗体上。设置网页地址即可浏览网页:
webBrowser1.Navigate(“www.baidu.com”, false);

TCP网络编程

System.Net.Sockets命名空间包含了一些相关类,允许直接发送TCP网络请求或者某个端口监听TCP网络请求。
System.Net.Sockets命名空间:
类:

名称说明
Socket实现套接字接口
SocketException发生套接字错误时引发的异常
TcpClient为TCP网络服务提供客户端连接
TcpListener从TCP网络客户端侦听连接
UdpClient提供用户数据协议(UDP)网络服务

枚举

名称说明
AddressFamily指定Socket类的实例可以使用的寻找方案
ProtocolFamily指定Socket类的实例可以使用的协议类型
PortocolType指定Socket类支持的协议
SocketFlags指定套接字的发送和接收行为
SocketOptionLevel为Socket.SetSocketOption和Socket.GetSocketOption方法定义套接字选项级别

TcpClient类

主要使用TcpClient类为TCP网络服务提供连接,包括相关属性和方法来控制连接,通过对流对象添加读写功能。
TcpClient类的主要方法:

名称说明
Connect使用指定的主机名和端口号将客户端连接到TCP主机
GetStream返回用于发送和接收数据的NetworkStream
Close释放此TcpClient实例,而不关闭基础连接

TcpClient类的主要属性:

名称说明
Client获取或设置基础Socket
SendTimeout发送操作超时时间
SendBufferSize获取或设置发送缓冲区的大小
ReceiveTimeout接收操作超时时间
ReceiveBufferSize获取或设置接收缓冲区的大小

TcpListener类

TcpListener类用于监听和接收连接请求,主要方法:

方法说明
Start开始侦听传入的连接请求
AcceptSocket接受挂起的连接请求
Stop关闭侦听器

NetworkStream类

传输数据时主要使用了NetworkStream类,它代表的是网络中传输的数据流,在发生会接收数据时,可从流中获取字节数据或对应的字符串。
NetworkStream类的主要方法:

名称说明
Read()从NetworkStream读取数据
ReadByte()从流中读取一个字节,并将流内的位置向前推进一个字节,已到达流的末尾,则返回-1
Write()将数据写入NetworkStream
WriteByte()将一个字节写入流的当前位置,并将流内的位置向前推进一个字节

NetworkStream类的主要属性:

名称说明
Length获取流上可用数据的长度
Socket获取基础Socket

服务端:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace NetWorkDemo
{public partial class FormTCPRecv : Form{public FormTCPRecv(){InitializeComponent();}private TcpListener listen;private NetworkStream netstream;/// <summary>///  启动/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void button1_Click(object sender, EventArgs e){listen = new TcpListener(9999);listen.Start();listBox1.Items.Add("服务器启动");Socket socket = listen.AcceptSocket();netstream = new NetworkStream(socket);}/// <summary>/// 接收/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void button2_Click(object sender, EventArgs e){if (netstream.DataAvailable){byte[] getdata = new byte[1024];int length = netstream.Read(getdata, 0, getdata.Length);string msg = Encoding.Default.GetString(getdata, 0, length);listBox1.Items.Add("收到客户端消息");listBox1.Items.Add(msg);}}}
}

客户端:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Net.Sockets;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace NetWorkDemo
{public partial class FormTCPSender : Form{public FormTCPSender(){InitializeComponent();}private NetworkStream netstream;private void button1_Click(object sender, EventArgs e){TcpClient client = new TcpClient();client.Connect("localhost", 9999);netstream = client.GetStream();if (textBox1.Text.Trim() == ""){MessageBox.Show("消息不能为空");return;}else{byte[] senddata = Encoding.Default.GetBytes(textBox1.Text);netstream.Write(senddata, 0, senddata.Length);netstream.Flush();}netstream.Close();}}
}

Socket类

Socket实例包含了一个本地或者一个远程端点的套接字信息,Socket类的主要成员:
Socket类的主要方法:

名称说明
Connect建立与远程主机的连接
Close关闭Scket连接并释放所有关联的资源
Listen将Socket置于侦听状态
Receive接收来自绑定的Socket的数据
Send将数据发送到连接的Socket

Socket类的主要属性:

名称说明
AddressFamily获取Socket的地址族
Available获取已经从网络接收且可供读取的数据量
Connected获取一个值,该值表明套接字是否与最后完成发送或接收操作的远程设备得到连接
ProtocolType获取Socket的协议类型
RemoteEndPoint获取远程端点
SendTimeout发送超时时间
SocketType获取Socket的类型
ReceiveBufferedSize获取或设置Socket接收缓冲区的大小

Socket类的构造函数:
public Socket(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType);

http://www.yayakq.cn/news/184113/

相关文章:

  • 计算机毕业设计作品网站在线短链接生成网址
  • 域名申请好了怎么做网站上海互联网设计公司
  • 东莞网站建设设计公司广州市设计院官网
  • 丽水专业网站建设公司电子商务网站建设与运营 说课
  • 科技类网站模板wordpress 如何安装插件
  • 网页托管网站网站开发的抓包
  • 模板自助建站网站制作互联网策划主要做什么
  • 网站装修用什么软件做wordpress 分段循环
  • 明星粉丝网站怎么做的数据库支持的网站怎么做
  • 中企动力科技股份有限公司网站官网浩森宇特北京网站设计
  • 西安招聘网站seo中文全称是什么
  • 免费行情软件网站有哪些郑州百度公司地址
  • 什么是网站外链深圳建网站 (报价)
  • 网上做平面设计的网站商丘做网站公司新站seo快速收录网页内容页的方法
  • 做音乐相册的网站增城手机网站建设
  • 网站建设属于哪种公司网站定位策划
  • 购物优惠券网站怎么做wordpress网络
  • 网站建设预算申请表平面设计专业的大专院校
  • 网站建设的需求是什么杭州seo泽成
  • 做搜狗pc网站快速网站开发需要什么专业学生
  • 58同城 网站建设 成都非法网站怎么推广
  • 建设网站用什么服务器网站关键词怎么做排名
  • 网站更改域名没有变更备案市场调研报告模板ppt
  • 网站app开发哪家好网站建设模板怎么设计
  • 建教会网站的内容排名前十的设计公司
  • wordpress做外贸网站网络舆情监测适合女生嘛
  • php做网站软件移动网站建设流程
  • 公司做网站的流程作图的步骤苏州it外包服务
  • 做网站建设的怎么拓展业务国际新闻消息
  • 内蒙古建设厅网站官网网站搭建实训总结