网络编程(Linux应用层编程)
文章平均质量分 66
网络编程
诗筱涵
邮箱:1372740910@qq.com 微信公众号:诗筱涵 技术交流群:960668018
展开
-
TCP和UDP阻塞和非阻塞之间的区别
我在网络上看到某些人说,阻塞就是将数据真正发送给对方,并且阻塞是发生在需要把前面的所有数据全部发送出去,然后再发送本次的,而非阻塞则是拷贝到发送缓冲区。我不得不说,上面的这种说法是错误的。man 一下 send,发现man里有描述容易误导,send() shall fail.应该是需要自己判断的,会返回实际发送成功的字节,想全部成功发送,需要自己实现一遍阻塞循环发送的逻辑,当多端口*大包发送的时候,可以非阻塞拆包发送(循环每个端口send一次小包,避免单个端口阻塞很久),效果会比阻塞的好很多。转载 2024-05-25 21:47:48 · 204 阅读 · 0 评论 -
写TCP UDP以及串口通信时,整型数组转字符串数组发送的便捷操作
串口通信一个udp通信,发送接口函数都是发送字符串,但是你看那个串口的发送函数ser.write(serial_msg);,注意长度由73改为了72,因为字符串数组一般末尾还会加上个"\0",所以长度会多1,这么改完编译,没有问题,运行,也控制了吊舱转动到指定角度了,看来我的理解是OK的,这么我以后可能不用专门再把整型数组转为一个二进制相同的转义字符串数组了,现在是用reinterpret_cast函数转的,以前我还更麻烦,手动写个转义字符数组出来。原创 2024-03-11 09:44:19 · 498 阅读 · 1 评论 -
网络编程 --- subprocess模块,struct模块,粘包,UDP协议,socket_server模块
转载自:网络编程 --- subprocess模块,struct模块,粘包,UDP协议,socket_server模块 - 余人。 - 博客园网络编程 --- subprocess模块,struct模块,粘包,UDP协议,socket_server模块目录subprocess模块 struct模块 粘包 粘包问题 解决粘包问题 解决粘包问题的方法 上传大文件的方法 UDP协议 特性 使用方法 socket_server模块 使用方法 sub.转载 2021-11-25 23:55:10 · 349 阅读 · 0 评论 -
字符串查找函数:strchr、strrchr、strchrnul、strstr、strrstr
字符串查找函数:strchr、strrchr、strchrnul、strstr、strrstr_计量小菜鸡的博客-CSDN博客_字符串查找字符串查找函数:strchr、strrchr、strchrnul、strstr、strrstr计量小菜鸡 2019-03-26 14:16:2114238 正在上传…重新上传取消 收藏 27分类专栏: 嵌入式 基础C 字符串 文章标签: 字符串函数版权嵌入式 同时被 3 个专栏收录13 ...转载 2021-09-19 09:02:54 · 419 阅读 · 0 评论 -
关于char 和char *类型,有时候函数需要char * 可以通过下面这种方式转换
关于char 和char *类型,有时候函数需要char * 可以通过下面这种方式转换https://gitee.com/maxibooksiyi/linux_udp_tcp_maxi_test/blob/master/HTTP/%E4%BE%8B%E7%A8%8B%E4%B8%80/httpclient.c原创 2021-09-14 10:46:23 · 265 阅读 · 0 评论 -
【C语言】 任意十进制数字转十六进制
转载自:【C语言】 任意十进制数字转十六进制 - 金舰 - 博客园大概思路:输入任意十进制数字 首先确定位数; 使用整形数组来存储十六进制数; a[0] 表示十六进制数字的位数; 最终效果:https://www.cnblogs.com/tao-zhu-forever/p/9126890.html【C语言】 任意十进制数字转十六进制大概思路:输入任意十进制数字 首先确定位数;使用整形数组来存储十六进制数; a[0] 表示十六进制数字的位数;#include <stdio.h&.转载 2021-09-13 22:15:00 · 6622 阅读 · 1 评论 -
很多朋友“字节序“和“bit序“分不清~(转载)
转载自:很多朋友"字节序"和"bit序"分不清~很多朋友"字节序"和"bit序"分不清~嵌入式情报局 昨天以下文章来源于最后一个bug ,作者bug菌1、剖析字节序 1)对于字节序其实很多小伙伴应该都是非常熟悉了,平时大家也都叫它"大小端",不过也有一部分小伙伴可能只是简单的知道它的概念,并没有在实际的代码开发中去深入了解,作者这里详细解析一下这个问题,同时也为后面的bit序铺垫。 2)既然叫"字节序",那么其描述的是字节的顺序问题,如果对于单个字节而言是没有字...转载 2021-09-13 21:54:47 · 671 阅读 · 0 评论 -
printf打印字符串的时候可以printf(“%s“,buf);buf可以是字符串名或者指针
printf打印字符串的时候可以printf("%s",buf);buf可以是字符串名或者指针比如buf可以是 char buf[10] 也可以是 char *buf[10]原创 2021-09-13 10:58:24 · 950 阅读 · 0 评论 -
关于海康摄像头的摘要认证(转载)
关于海康摄像头的摘要认证y673533511 2019-03-11 10:30:014132 正在上传…重新上传取消 收藏 6版权最近在做一个项目时候要用到摄像头人脸抓拍,人脸识别等功能,原本使用海康的SDK就可以解决的,但是我们项目是在arm平台下开发的,而海康的SDK不支持arm平台,无奈联系的海康的技术支持,他们提供的了一种基于海康私有ISAPI 协议,通过HTTP进行摘要认证。什么是摘要认证? 简单的说就是你要登录某个网站,网站会让你输入用户名密码才才能进行正常...转载 2021-09-12 23:08:20 · 2987 阅读 · 1 评论 -
curl命令使用digest方式验证用户
转载自:curl命令使用digest方式验证用户 - ZPDEVcurl命令使用digest方式验证用户发表于 2016-09-18 | 分类于 技术本文作者: 周志平 本文链接: curl命令使用digest方式验证用户 - ZPDEV 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!Bashcurl -i http://127.0.0.1:20001/ctg/system/get -X PUT --digest -..转载 2021-09-12 22:21:57 · 2256 阅读 · 0 评论 -
Linux命令发送Http GET/POST请求
转载自:Linux命令发送Http GET/POST请求 - kaleidoscopic - 博客园Linux命令发送Http GET/POST请求Get请求curl命令模拟Get请求:1、使用curl命令: 1 2 3 4 curl "http://www.baidu.com" 如果这里的URL指向的是一个文件或者一幅图都可以直接下载到本地 curl -i "http://www.baidu.com" 显示全部信息 ...转载 2021-09-12 22:16:36 · 254 阅读 · 0 评论 -
ubuntu 通过脚本使用firefox浏览器批量快速打开网页
转载自:ubuntu 通过脚本使用firefox浏览器批量快速打开网页 - 行走的思想 - 博客园ubuntu 通过脚本使用firefox浏览器批量快速打开网页需求:有一批url链接在excel表格里面,想批量通过浏览器打开这些链接,不想手动一个一个打开链接,怎么快速实现呢?通过浏览器的firefox命令即可实现excel表格里面第一列批量放置/usr/bin/firefox ,第二例批量放置url,然后将两列的内容 拷贝到sh脚本里面,最终在终端打开脚本即可形如:/us..转载 2021-09-12 22:13:35 · 1040 阅读 · 0 评论 -
HTTP认证之摘要认证——Digest(一)
转载自:HTTP认证之摘要认证——Digest(一) - xiaoxiaotank - 博客园本认证——Basic(一) HTTP认证之基本认证——Basic(二) HTTP认证之摘要认证——Digest(一) HTTP认证之摘要认证——Digest(二)Digest认证是为了修复基本认证协议的严重缺陷而设计的,秉承“绝不通过明文在网络发送密码”的原则,通过“密码摘要”进行认证,大大提高了安全性。相对于基本认证,主要有如下改进:绝不通过明文在网络上发送密码 可以有效防止恶意用户进行转载 2021-09-12 10:02:30 · 1073 阅读 · 0 评论 -
http digest认证过程分析及例子(这个给出了提取函数)
转载自:http digest认证过程分析及例子_希哈科技的博客-CSDN博客http digest认证过程分析及例子技术标签:httpdigest认证验证过程: 步骤一、客户端向服务器申请数据 ****************************Request******************************GET /auth HTTP/1.1(\r\n)Accept: */*(...转载 2021-09-12 09:01:41 · 545 阅读 · 0 评论 -
一些十分有用的字符串相关的函数,在写串口解析,TCP HTTP通信时有用
写串口TCP HTTP,这方面感受颇深,也遇到不少对吧。写数据解析时的常用函数在字符串中查找字符串。strstr我觉得有了str很多解析写起来会轻松快很多。字符串合并函数字符串连接函数strcat,这个可以好好用用_TYINY的博客-CSDN博客熟练用这两个函数写http应该还好感觉有必要总结一些字符串常用函数。还有strlen判断字符串长度,这个在TCP发送有用到https://gitee.com/maxibooksiyi/linux_udp_tcp_maxi_...原创 2021-09-12 00:39:59 · 245 阅读 · 0 评论 -
HTTP Basic和Digest认证介绍与计算
转载自:HTTP Basic和Digest认证介绍与计算 - 诸子流 - 博客园HTTP Basic和Digest认证介绍与计算一、说明web用户认证,最开始是get提交+把用户名密码存放在客户端的cookie中的形式;在意识到这样不安全之后逐渐演变成了post提交+把用户凭证放到了服务端的session中的形式(当然sessionid还在cookie中)。不过其实最初给http设计的认证方式,既不是“get+cookie”也不是“post+session”,而是Basic和Digest.转载 2021-09-11 19:08:26 · 1002 阅读 · 0 评论 -
http Digest认证计算方法整理
摘要认证及实现HTTP digest authentication - 简书不要不知道上面说的URI是什么意思啊图解HTTP 第 8 章 确认访问用户身份的认证 - 简书Http auth认证的两种方式Basic方式和 Digest认证_Virgil_K2017的博客-CSDN博客...原创 2021-09-11 18:28:33 · 3763 阅读 · 4 评论 -
[转]www-authenticate认证过程浅析
[转]www-authenticate认证过程浅析新一下的兰天 2016-07-06 18:22:2018002 正在上传…重新上传取消 收藏 4分类专栏: HTTP 文章标签: 网络版权HTTP 专栏收录该内容0 篇文章 0 订阅订阅专栏一、www-authenticate简介www-authenticate是早期的一种简单的,有效的用户身份认证技术。很多网站验证都采用这种简单的验证方式来完成对客户端请求的数据的合法性进行验证。尤其在嵌入式领域...转载 2021-09-11 17:36:42 · 1179 阅读 · 0 评论 -
纯C++实现的HTTP请求封装(POST/GET)
转载自:纯C++实现的HTTP请求封装(POST/GET)_阳光柠檬_的技术笔记-CSDN博客纯C++实现的HTTP请求封装(POST/GET)时间2016-09-14栏目 C&C++原文 http://blog.csdn.net/liukang325/article/details/52538256纯C++实现的HTTP请求(POST/GET),支持windows和linux,进行简单的封装, 方便调用。实现如下:#include "HttpConnect.h...转载 2021-09-11 15:39:57 · 1477 阅读 · 0 评论 -
Http Get请求简单实例(C++)
Http Get请求简单实例(C++)HTTP报文HTTP请求报文请求行: GET /HTTP/1.1 格式:请求的方法 + http版本首部字段:Host : 需要访问的url (必须)**User-Agent:**请求浏览器类型**Accept-Language:**客户端接收的自然语言**Accept-Encoding:**客户端接收的编码压缩格式**connection:**连接方式C++代码示例:// HttpReq.cpp : ...转载 2021-09-11 15:13:43 · 3636 阅读 · 0 评论 -
libcurl可以发送http请求
libcurl可以发送http请求轻量级C++实现的httpserver和httpclient_c++httpserver-C++代码类资源-CSDN下载(转)libcurl库使用方法,好长,好详细。 - _浪潮之巅.☆ - 博客园原创 2021-09-11 15:00:35 · 129 阅读 · 0 评论 -
HTTP报文(这篇讲得比较详细)
HTTP报文 之前写过一篇HTML报文,但是感觉写完之后还是不懂,最近终于有时间开始看《HTTP权威指南》,看完之后觉得还是比之前的理解更加深入了,提取HTTP报文出来做个记录。 HTTP报文分为请求报文(request message)与响应报文(response message)。一、报文的组成部分 一个HTTP报文由3部分组成,分别是: (1)、起始行(start line) (2)、首部(header) (3)、主体(body) 示例:HTT...转载 2021-09-11 13:18:14 · 3798 阅读 · 1 评论 -
http authorization 基本认证
http authorization 基本认证http协议是无状态的, 浏览器和web服务器之间可以通过cookie来身份识别。 桌面应用程序(比如新浪桌面客户端, skydrive客户端)跟Web服务器之间是如何身份识别呢? 阅读目录什么是HTTP基本认证 HTTP基本认证的过程 HTTP基本认证的优点 每次都要进行认证 HTTP基本认证和HTTPS一起使用就很安全 HTTP OAuth认证 其他认证 客户端的使用 什么是HTTP基本认证 桌面应用程序也通过HT...转载 2021-09-11 12:28:12 · 3166 阅读 · 0 评论 -
HTTP 账号密码验证
HTTP 账号密码验证173300598 2018-05-28 10:46:414666 正在上传…重新上传取消 收藏 1分类专栏: HttpHttp 专栏收录该内容16 篇文章 0 订阅订阅专栏https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Authentication通用的 HTTP 认证框架RFC 7235定义了一个 HTTP 身份验证框架,服务器可以用来针对客户端的请求发送challen...转载 2021-09-11 11:55:34 · 2084 阅读 · 0 评论 -
字符串连接函数strcat,这个可以好好用用
字符串连接函数strcat,这个可以好好用用C++:C语言实现HTTP的GET和POST请求 - 方方和圆圆 - 博客园原创 2021-09-11 00:13:54 · 109 阅读 · 0 评论 -
C++:C语言实现HTTP的GET和POST请求
转载自:C++:C语言实现HTTP的GET和POST请求 - 方方和圆圆 - 博客园C++:C语言实现HTTP的GET和POST请求阅读目录 HTTP请求和IP/TCP 实现GET请求 实现POST请求: 参考:回到顶部 HTTP请求和IP/TCP 所谓的HTTP协议是基于IP/TCP协议的, 所以要获取远端的html数据只要创建socket对象就足够了; HTTP是基于IP/TCP加上了网络请求的固定格式, 比如:运行下面代码metho...转载 2021-09-10 18:31:32 · 6988 阅读 · 0 评论 -
在ubuntu+vs code上通过HTTP协议实现服务器端和客户端通信(转载)
在ubuntu+vs code上通过HTTP协议实现服务器端和客户端通信DP323 2021-06-07 15:47:4752 正在上传…重新上传取消 收藏分类专栏: Linux 文章标签: http通信 vs code 服务器端 客户端 下载并保存数据版权Linux 专栏收录该内容11 篇文章 0 订阅订阅专栏一、操作系统: Ubuntu16.0.4(两台虚拟机)二、编译工具:vs code(相关配置见之前的文章vs code安装与配置,在搜索C...转载 2021-09-09 23:00:32 · 526 阅读 · 0 评论 -
C语言网络编程(2)— TCP通信(转载)
C语言网络编程(2)— TCP通信Willliam_william 2020-04-15 18:03:51958 正在上传…重新上传取消 收藏 12分类专栏: C语言网络编程版权C语言网络编程 专栏收录该内容7 篇文章 0 订阅订阅专栏C语言网络编程(2)— TCP通信一、TCP客户端1、建立连接我们要使用到socket,首先首先我们添加要使用的头文件#include <stdio.h>#include <string....转载 2021-09-09 18:19:41 · 6126 阅读 · 0 评论 -
select实现简单TCP通信(ubuntu 18.04)
转载自:https://www.cnblogs.com/soldierback/p/10701684.htmlselect实现简单TCP通信(ubuntu 18.04) 一、服务器程序(server.c) #include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <string.h>#include <sys/socket.h>#include &l转载 2021-09-09 16:56:10 · 743 阅读 · 0 评论 -
网络通信1—TCP程序编写步骤(参照 Ubuntu 16.04 版本)(转载)
转载自:https://blog.csdn.net/wenfei11471/article/details/79478105网络通信1—TCP程序编写步骤(参照 Ubuntu 16.04 版本)wenfei11471 2018-03-07 22:38:48965 收藏 4 分类专栏: Linux C 语言 文章标签: TCP Linux 网络编程版权 Linux C 语言 专栏收录该内容31 篇文章 0 订阅订阅专栏TCP基础模型服务器流程 step 1:创转载 2021-09-09 16:53:06 · 642 阅读 · 0 评论 -
Python requests HTTP验证登录实现流程
对我而言最重要的是这几句假设url为http://xxx.yyy.zzz用户名为admin密码为123456则访问的网址应该为http://admin:123456@xxx.yyy.zzz【http://username:password@url】直接访问改网址即可转载自:https://www.jb51.net/article/199036.htmPython requests HTTP验证登录实现流程更新时间:2020年11月05日 12:00:09 作者:..转载 2021-09-09 11:47:45 · 4410 阅读 · 0 评论 -
Postman安装与使用(转载)
转载自:https://www.cnblogs.com/fnng/p/9136434.htmlPostman安装与使用 2018-06-04 22:58 虫师 阅读(418868) 评论(13) 编辑 收藏 举报Postman一款非常流行的API调试工具。其实,开发人员用的更多。因为测试人员做接口测试会有更多选择,例如Jmeter、soapUI等。不过,对于开发过程中去调试接口,Postman确实足够的简单方便,而且功能强大。官方网站:https://www.getpostman...转载 2021-09-09 09:52:11 · 123 阅读 · 0 评论 -
这应该是postman最详细的中文使用教程了
转载自:https://www.jianshu.com/p/77f4f9175028这应该是postman最详细的中文使用教程了xiaolanzi00722017.03.17 17:38:40字数 2,419阅读 173,008一 简介Postman是一款功能超级强大的用于发送 HTTP 请求的Chrome插件。做web页面开发和测试的人员应该是无人不晓无人不用!其主要特点特点:创建 + 测试:创建和发送任何的HTTP请求,请求可以保存到历史中再次执行Organize:使用Pos转载 2021-09-09 09:47:19 · 6839 阅读 · 0 评论 -
实际开发中,写的都是基于UART CAN TCP等更上一层的协议(相对而言的应用层协议),UART CAN TCP这种已有通用的协议早已经有现成的包或者API可以用。
实际开发中,写的都是基于UART CAN TCP等更上一层的协议(相对而言的应用层协议),UART CAN TCP这种已有通用的协议早已经有现成的包或者API可以用。真正别人产品所提供的也是这种更上一层的协议,别人没必要跟你把UART CAN TCP讲一遍。。...原创 2021-09-08 21:40:35 · 198 阅读 · 0 评论 -
Linux网络编程 | TCP编程实例(也可以当做一个Ubuntu TCP通信的例程代码,发的也是字符串。)
也可以当做一个Ubuntu TCP通信的例程代码,发的也是字符串。转载自:https://mp.weixin.qq.com/s/sm5W8H6iWcVZVBhDTL244wLinux网络编程 | TCP编程实例原创 安迪西 嵌入式攻城狮 2020-12-13点击蓝字 关注我们TCP编程实例TCP编程分为客户端和服务器端两个部分,其中服务器端首先建立起socket,然后与本地端口进行绑定,接着开始接收客户端的连接请求并建立与它的连接,最后接收客户端发送的消息;客户端则.转载 2021-09-08 09:35:10 · 1065 阅读 · 0 评论 -
Linux内核Socket CAN中文文档
转载自:https://www.cnblogs.com/eaggle/p/7641406.htmlLinux内核Socket CAN中文文档 转载自:http://blog.csdn.net/zhangxiaopeng0829/article/details/7646639自己在年假中空闲之余翻译的内核中Socket CAN的文档,原文地址在:http://lxr.linux.no/linux+v2.6.34/Documentation/networking/can.txt但是这篇文转载 2021-09-07 15:44:14 · 3301 阅读 · 0 评论 -
Windows平台RTMP/RTSP播放器窗口添加OSD叠加文字效果
转载自:https://zhuanlan.zhihu.com/p/353750409Windows平台RTMP/RTSP播放器窗口添加OSD叠加文字效果牛哥大牛直播SDK联合创始人,daniusdk.com好多开发者在做Windows平台特别是单屏多画面显示时,希望像监控摄像机一样,可以在播放画面添加OSD台标,以实现字符叠加效果,大多开发者可很轻松的实现以上效果,针对此,本文以大牛直播SDK (Github)的Windows平台demo为例,简单介绍下具体实现:Windows平台R转载 2021-09-06 21:52:28 · 597 阅读 · 0 评论 -
Http_parser报文解析(转载)
转载自:https://blog.csdn.net/qq_36482772/article/details/80174358转载 2021-09-06 17:36:01 · 143 阅读 · 0 评论 -
http parser库的使用方法(转载)和另一篇博文对比着看就找到了代码共同点
转载自:https://blog.csdn.net/smwhotjay/article/details/82561941?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Edefault-11.no_search_link&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogComm转载 2021-09-06 15:13:18 · 255 阅读 · 0 评论 -
使用http_parser解析URL
转载自:https://www.iteye.com/blog/shangxun-2139443使用http_parser解析URL 用C语言编写http应用,解析URL是一个繁琐的事儿。前几天使用http_parser实现httpclient,发现里面提供了一个解析URL的方法http_parser_parse_url,用起来相当方便。http_parser_parse_url通过分析URL字符串,把port、host、path、schema之类的信息保存在一个结构体http_parser转载 2021-09-06 15:04:01 · 701 阅读 · 0 评论