关于STM32的HTTP模式GET方法的远程升级(三 代码)

首先:版权声明:本文为博主原创文章,未经博主允许不得转载

使用STM32封装HTTP协议
通过封装HTTP头,向服务器发送GET请求,通过GET请求上传数据,并获取返回值

#include <string.h>
#include <stdio.h>
#include <stdint.h>

char text[30];
char temp[10];

/**
  * @brief   组HTTP GET报文
  * @param   pkt   报文缓存指针
  * @param   key   key唯一识别码
  *    @param      data  数据
  */
uint32_t HTTP_GETPkt(char *pkt, const char *key, int data)
{
  *pkt = 0;
  memset(temp, 0, 10);
  memset(text, 0, 30);

  // 组装GET请求字符串
  sprintf(temp,"%d", data);
  strcat(text, "auth_key=");
  strcat(text, key);
  strcat(text, "&");
  strcat(text, "data=");
  strcat(text, temp);
  
  // 向服务器发送GET请求的文件地址
  strcat(pkt, "GET /getinfo.php?");
  strcat(pkt, text);
  // 使用1.1版本HTTP
  strcat(pkt, " HTTP/1.1\r\n");
  // 服务器所在地址,这是自己电脑通过无线局域网建立的服务器
  // IP:192.168.1.108,PORT:8888
  strcat(pkt, "Host: 192.168.1.108:8888\r\n");
  // 保持连接
  strcat(pkt, "Connection: Keep-Alive\r\n");
  // 不使用缓存
  strcat(pkt, "Cache-Control: no-cache\r\n");
  strcat(pkt, "\r\n\r\n");
  
  return strlen(pkt);
}

通过调用HTTP_GETPkt()函数并传入指定参数,就可以通过局域网上传数据到自己搭建的服务器,当应用于公网时,只需要把IP和PORT做相应修改即可。
 

下载资源:https://download.csdn.net/download/u013184273/12012056

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值