解析url
2014-04-23 00:00
113 查看
摘要: 对url进行简单解析,主要提取uri 和 port
#include <stdio.h> #include <string.h> #include <stdlib.h> // 解析url,作为示例,很多情况没考虑,比如说user,pass之类的 int parse_url(char *url, char **serverstrp, int *portp, char **pathstrp) { char buf[256]; int serverlen, numread=0; // 跳过"http://" ,例"http://www.a.cn"->"www.a.cn" url = url+7; // 输入url直到遇到'/'和':'符号 sscanf(url, "%255[^/:]", buf); serverlen = strlen(buf); *serverstrp = (char *)malloc(serverlen+1); strcpy(*serverstrp, buf); if(url[serverlen]==':') { // 获取port sscanf(&url[serverlen+1], "%d%n", portp, &numread); /* add one to go PAST it */ numread++; } else { *portp = 80; } /* the path is a pointer into the rest of url */ *pathstrp = &url[serverlen+numread]; return 0; } int main() { char url[256] = "http://www.a.cn:80//index.html"; char pathstr[256] = {'/0'}; char szserverstrp[256] = {'/0'}; char* serverstrp = szserverstrp; char* pathstrp = &pathstr[0]; int port; parse_url(url,&serverstrp,&port,&pathstrp); printf("%s/n%s/n%d/n%s/n",url,serverstrp,port,pathstrp); return 0; }
相关文章推荐
- 使用Webwork URL参数解析功能
- 利用parse_url和parse_str快速解析url
- MinerUrl.java 解析页面后存储URL类
- URL 参数解析
- php解析url并得到url中的参数
- 简单解析URL
- 浅谈PHP解析URL函数parse_url和parse_str
- [Java] 网页相对URL解析
- PHP的学习--解析URL
- java解析出url请求的路径和参数键值对类(解析出url请求的路径,包括页面)
- javascript解析url
- URL短地址压缩算法 微博短地址原理解析 (Java实现)
- 基于visual c++之windows核心编程代码分析(55)使用GoogleUrl方便安全地解析URL
- url参数分割解析
- JS解析URL
- C#实例详细解析URL含义
- dns解析URL过程
- Java遍历解析URL类型字符串中参数
- javascript 解析url
- Node基础:url查询参数解析之querystring