没有合适的资源?快使用搜索试试~ 我知道了~
学习用c、c++写cgi程序
5星 · 超过95%的资源 需积分: 36 36 下载量 75 浏览量
2012-04-07
15:52:31
上传
评论 1
收藏 38KB DOC 举报
温馨提示
试读
2页
CGI全称Common Gateway Interface(共同编程接口),是一种编程接口,不论什么语言,只要按照该接口的标准编写出来的程序,即可叫做CGI程序。CGI 程序的输入/输出是使用编程语言的标准输入/标准输出,所以用C/C++来写 CGI 程序就好象写普通程序一样。
资源推荐
资源详情
资源评论
CGI 全称 Common Gateway Interface(共同编程接口),是一种编程接口,不论
什么语言,只要按照该接口的标准编写出来的程序,即可叫做 CGI 程序。CGI
程序的输入/输出是使用编程语言的标准输入/标准输出,所以用 C/C++来写 CGI
程序就好象写普通程序一样。
1)CGI 程序的通信方式
当有数据从浏览器传到 Web 服务器后,该服务器会根据传送的类型(基本
有二类:GET/POST),将这些接收到的数据传入 QUERY_STRING 或变量中,
CGI 程序可以通过标准输入,在程序中接收这些数据。当要向浏览器发送信息
时,只要向 Web 服务器发送特定的文件头信息,即可通过标准输出将信息发往
Web 服务器,Web 服务器处理完这些由 CGI 程序发来的信息后就会将这些信息
发送给浏览器。这样就是 CGI 程序的通信方式了。
2)接收数据
用 GET 方式接收到的数据保存在 Web 服务器的 QUERY_STRING 变量里,
而通过 POST 方式接收到的数据是保存在这个 Web 服务器变量里。它们的唯一
区别就是:以 GET 方式接收的数据是有长度限制;而用 POST 方式接收的数据
是没有长度限制的。并且,以 GET 方式发送数据,可以通过 URL 的形式来发
送,但 POST 方式发送的数据必须要通过 Form 才到发送。
将程序用 gcc 编译,结果放在放在/cgi/bin 目录下,在 brower 中输入
程序示例
helloword.c
#include <stdio.h>
main()
{
printf("Content-type:text/html"); //文件显示类型
printf("Hello,World!"); //显示内容
}
复制代码
http://localhost/cgi-bin/helloworld
则可输出 hello,world。
see more in 【1】
3、使用 cgi 处理 get 和 post 的数据请求简单示例
说明:apache+suse10.1
cgi 程序
View Code
#include <stdio.h>
#include <stdlib.h>
#define MAXLEN 80
int main(void)
{
long len;
char *lenstr, poststr[80];
printf("Content-Type:text/html");
char *pRequestMethod;
setvbuf(stdin, NULL, _IONBF, 0); /*turn off stdin's cache*/
pRequestMethod = getenv("REQUEST_METHOD");
if (strcmp(pRequestMethod, "POST") == 0)
{
printf("<TITLE>This is Post operation</TITLE>");
lenstr = getenv("CONTENT_LENGTH");
资源评论
- cqw5657750762015-07-22讲了C++的CGI 的API ,内容详实;
- 陈磊123456782014-03-14这个文章写得很好,对我帮助很大
menghuan816
- 粉丝: 2
- 资源: 42
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 课程设计-基于SpringBoot + Mybatis+python爬虫NBA球员数据爬取可视化+源代码+文档+sql+效果图
- 软件品质管理系列二项目策划规范.doc
- 基于TensorFlow+PyQt+GUI的酒店评论情感分析,支持分析本地数据文件和网络爬取数据分析+源代码+文档说明+安装教程
- 软件定义无线电中的模拟电路测试技术.pptx
- 软件开发协议(作为技术开发合同附件).doc
- 软件开发和咨询行业技术趋势分析.pptx
- 软件测试题详解及答案.doc
- 软件漏洞生命周期管理策略.pptx
- 毕业设计-基于Python实现的的简易气温爬虫,可以爬取全国各市的近7日气温数据
- 软件系统测试报告(实用版).doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功