自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 PHP获取请求信息遇到的小坑

这几天学到php的GD图像处理库,做了一个验证码的小demo前端用户提交输入框的字符串,在后台将字符串与存在SESSION中的验证码字符串进行比较,判断用户输入是否正确第一版做的是通过form表单提交到后台php文件进行处理,这样提交以后浏览器就会跳转到响应页面第二版通过js进行提交,并去掉form的默认提交行为,通过AJAX获取验证码的判断状态但是即使设置了请求头为Content-Type : application/json,后台代码中$_POST却接收不到post方式发送过去的数据,是空值查

2021-05-04 09:42:04 164 3

原创 http协议之路由重定向——301/307状态码

http协议之路由重定向——301/307状态码前几天一直在看http状态码,看到了有关url重定向的部分状态码原因短语详情301Moved Permanently(永久搬离)请求的URL已经移走,响应中应该包含一个Location,说明资源现在的位置307Temporary Redirect(临时重定向)类似301,客户端应该用Location首部给出的URL对资源进行临时定位虽然书中已经说的很明确了,但是还是有几个小小的疑问301状态码描述为响应中应该包

2021-03-29 20:40:28 2990 3

原创 小菜鸡的require.js源码之旅 —— (一)

一、require使用方法require遵循AMD规范也就是通过在加载模块时注册回调函数的方式,当所需模块加载完成后,再去执行回调这样就保证了不会因所需模块未加载而造成的错误<script src="./js/require.js" data-main="./js/main.js"></script>使用时需要加上data-main属性,指向脚本文件的入口文件位置二、开始分析1.给定了入口文件位置,第一步肯定要找到入口文件具体额位置#2007-#2052于是我发现

2021-03-24 17:03:18 130

原创 JavaScript中函数构造器与函数声明的区别

JavaScript中函数构造器与函数声明的区别虽然通过函数构造器的方式创建函数几乎没什么作用,但是作为JavaScript的一种边缘功能在某些情况下还是可以处理一些比较奇怪的需求的官方文档https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function#examplesFunction函数构造器可以接受多个字符串参数,最后一个表示函数体,前面的是形参列表在MDN官方文档中,对于函数构

2021-03-04 08:01:01 246 2

原创 数据结构学习笔记(一)—— 链表

数据结构学习笔记(一)—— 链表(先在这里悄悄打个小广告 !^_^)我看的是青岛大学王卓老师的数据结构视频,真的讲的非常好,每个点都讲得很仔细B站链接:数据结构与算法基础(青岛大学-王卓)链表链表是一种很基础的数据结构,也可以利用链表构造其他的高级数据结构,掌握其中的一些思想也会方便学习之后的高级数据结构一、基本结构与思想传统的存储方式很容易想到用数组来实现。用数组存储数据优点有很多比如:创建起来比较方便因为每个元素存储在连续的一片内存空间上,这样读取某个特定位置的元素就可以通

2021-03-01 17:06:39 371

原创 leetcode 34.在排序数组中查找元素的第一个和最后一个位置

在排序数组中查找元素的第一个和最后一个位置leetcode: 34.在排序数组中查找元素的第一个和最后一个位置题解题目中说了是一个非递减的排序数组,从中查找给定的元素位置,很容易想到使用二分查找的思路一、找下界(最左侧的目标元素)1.初始情况low指向数组头部 heigh指向数组尾部mid指向(low + heigh)/ 2 的元素2.第一次二分Arr[mid] >= target说明下界肯定在mid的左边,因为右边全是大于或等于target的元素将heigh指向mid左

2021-03-01 15:54:59 243 1

原创 数据结构学习笔记

数据结构学习历程记录因为我自己是学硬件出身,没有系统的学习过,在实习的过程中我深刻体会到了数据结构对于写出可维护的代码的重要性(学习数据结构后真的能让你写出思路清晰的优质代码啊!)所以这个假期抽空想补上相关的知识。先开一个头,笔记会逐步整理。...

2021-02-26 22:04:20 121

原创 leetcode 876.链表中间结点

链表中间结点leetcode题目链接:876. 链表的中间结点一、朴素解法最直观的思路,因为不知道这个链表的长度,就先通过一次循环统计链表的长度len之后第二次遍历,直到找到中间结点,输出/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */ struct ListNode* middleNode(struct

2021-02-23 09:53:03 212

原创 C语言反转字符串

C语言反转字符串最近看了好多开发中的奇技淫巧,于是有了这样的思路反转字符串虽然简单但应用范围却很广,一般的套路是先用字符串数组读入字符串,然后循环并倒序输出每一位字符。我又想到了在做链表反转时用到的递归的思路来尝试解决此类问题,于是有了本文。// 递归反转字符串 void reverseStr(char *s){ if(*s == '\0') return; reverseStr(++s); printf("%c",*(--s));} int main(void){ char s[]

2021-02-23 08:52:52 1172

原创 微信小程序-百度AI语音识别——(二)

微信小程序-百度AI语音识别(二)上次在浏览器上实现了小demo,但毕竟pc端的录音还是体验不怎么好, 这次用微信小程序实现一下。一、新建工程采用原生小程序的方式进行开发,原来几乎没怎么接触过原生小程序的开发,都是直接vue打包为微信小程序的方式,不过原理应该是一样的,与vue的开发方式差别也不是很大。打开微信开发者工具,新建工程,当时出于一些七七八八的原因,我建了一个自带云开发方式的工程,但是并没有用到云开发相关的内容。(其实是当时查阅资料,很多文章都说微信小程序的录音api不支持pcm格式,

2021-02-14 11:31:59 1889 11

原创 微信小程序-百度AI语音识别——(一)

微信小程序-百度AI语音识别——(一)一、百度AI某天闲来无事在CSDN上看到有大神用百度语音识别+图灵机器人做了一个可以语音聊天(调戏人工智障 )的小demo,觉得挺有趣的,也想着实现一下。百度AI打开百度AI的官网,看到有很多功能打开官方提供的小程序上的demo,也做了很多丰富的功能,(眼前一亮)语音识别二、着手实现(开始踩坑)本着严谨的原则,肯定要先通过postman工具把接口调通之后再进行开发1.接口鉴权套路都一样 一个ACCESS KEY 一个 ACCESS SECRET直

2021-02-14 10:46:54 2834 1

原创 STM32发送单极性归零码驱动WS2812(二)

STM32发送单极性归零码驱动WS2812(二)二、“旧事”重提时间匆匆过去,也到了该着手准备毕业设计的阶段了。我早早就向老师确定了选题,我想做一个智能灯光控制系统。在灯光选型的问题上,我又想到了几个月前令我头疼好长时间的WS2812,但这次我可是有备而来,在主控芯片的选型上,我决定采用自己熟悉的STM32系列芯片,当时我想着之前4M的主频都可以跑得动,这次使用32芯片,最高72M的主频难道还会跑不起来吗?但是我想着这次肯定不能再采用nop延时的方式了,因为当时在另外一家公司进行实习,毕业设计也就一

2021-02-02 15:54:04 2700

原创 STM32发送单极性归零码驱动WS2812(一)

STM32驱动WS2812因为毕业设计中会用到WS2812灯带,通过MCU发送数据对灯带进行控制,其中遇到一些坑,记录在这里一、WS2812数据格式1.初次接触WS2812WS2812是一种通过单极性归零码控制的LED控制IC,内部封装好了一定的整形电路,并且内置锁存器,可以从信号输入引脚自动截取24bit的数据锁存在内部,之后将其余的信号经过一定的整形从输出引脚发送出去,使得灯珠间级联成为了可能。数据帧格式如下:第一次接触这款产品还是在大三暑期实习的时候,当时初次接触这个产品就被这种级

2021-02-01 14:02:59 3500 3

原创 腾讯位置服务接入教程

腾讯位置服务接入一、前期准备账号注册微信直接扫码登陆申请开发者key控制台->key与配额->key管理key设置最好把每个独立的功能抽出来申请一个开发者key这里我申请了两个 (反正又不花钱^ v ^)进入key设置的界面直接勾选WebServiceAPI就行✔之后点保存二、开发前准备我想做的是一个根据用户此时的ip获取用户的位置之后查询当地的天气数据原理和实现都比较简单作为一名合格的开发者,接触到一个新的东西第一步当然是要看它的开发文档了。文档链接在

2021-01-25 16:16:44 930

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除