linux html用ajax请求C语言方法 open 管道没有权限

C语言 码拜 9年前 (2015-11-02) 1105次浏览
在终端用命令执行C程序管道数据接收、发送正常,html用ajax请求C程序open 管道就返回-1,根据erron获取错误信息提示是没有权限,该怎么解决?
代码如下:

      if (access(FIFO_TXD, F_OK) == -1)  
	{ 
		res = mkfifo(FIFO_TXD, 0777); 
		printf("<item>===========1-2==========%d</item>\n",res);
		if (res!=0) 
 		{
			i=-1;
	 		printf("Could not create fifo %s\n", FIFO_TXD); 
	 		exit(EXIT_FAILURE); 
		}
	}
	printf("<item>===========2-1==========</item>\n");
	if (access(FIFO_RXD, F_OK) == -1)  
	{ 
		res = mkfifo(FIFO_RXD, 0777); 
		printf("<item>===========2-2==========%d</item>\n",res);
		if (res!=0) 
 		{
			i=-1;
	 		printf("Could not create fifo %s\n", FIFO_RXD); 
	 		exit(EXIT_FAILURE); 
		}
	}
       pipe_fd_txd = open(FIFO_TXD, O_RDONLY);  //ajax请求执行到这返回-1,open失败
	printf("<item>===========3-1==========%d</item>\n",pipe_fd_txd);
 	if (pipe_fd_txd == -1)
	{
		printf("OPEN %s_FAILURE\n",FIFO_TXD);
		exit(EXIT_FAILURE);
	}
解决方案:40分
ajax 没用过,linux 管道也没用过,不过
FIFO_TXD, O_RDONLY 发送管道,为何是只读的打开
pipe_fd_txd = open(FIFO_TXD, O_RDONLY);  //ajax请求执行到这返回-1,open失败
printf(“<item>===========3-1==========%d</item>\n”,pipe_fd_txd);

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明linux html用ajax请求C语言方法 open 管道没有权限
喜欢 (0)
[1034331897@qq.com]
分享 (0)