读书人

C#怎么通过Apache访问PHP文件

发布时间: 2012-09-03 09:48:39 作者: rapoo

C#如何通过Apache访问PHP文件?
自己写的C#代码如下:

C# code
static string RegularFlowURL = "http://127.0.0.1/flowserver/html/menu_detail.php";public static void Check(){    try    {         System.Net.ServicePointManager.Expect100Continue = false;         Stream instream = null;         StreamReader sr = null;         HttpWebResponse response = null;         HttpWebRequest request = null;         Encoding encoding = Encoding.UTF8;         request = WebRequest.Create(RegularFlowURL) as HttpWebRequest;         response = request.GetResponse() as HttpWebResponse;         instream = response.GetResponseStream();         sr = new StreamReader(instream, encoding);         string content = sr.ReadToEnd();         MessageBox.Show(content);    }    catch (Exception ee)    {        MessageBox.Show(ee.ToString());    }

这样会弹出该php文件的源代码(除PHP语言之外),但就是没能执行该php文件原本发送邮件的功能。若用浏览器访问此PHP文件,则可正常发送邮件。该怎么改呢?请高手指点!

[解决办法]
为什么不从PHP这边提供一个发邮件的Web API呢?
[解决办法]
http://127.0.0.1/flowserver/html/menu_detail.php

这里面有没有涉及登录后才能发一类的,你用那样请求,相应的参数没加,肯定发不出去啊,先分析一下那个PHP文件需要传递哪些参数
[解决办法]
你想要的不是 访问PHP 吧? 而是访问 WEB 吧
[解决办法]
使用 system.net
WebClient 吧。
可以帮你解决到你需要的问题
[解决办法]
WebRequest是不会去执行js的,要么用WebBrowser,要么修改服务端让它提供一个可以调用的发送邮件API
[解决办法]
JS是在浏览器执行的,用C# WebBrowser 这个类来访问PHP文件,因为WebBroswer这个类,用的是IE的内核。你可以理解为,IE就是用WebBrowser来写的,WebBrowser就是个小浏览器。或者你这个需求,是不需要JS的,C#可以定时访问一个PHP文件,这个PHP文件直接去数据库中搜索数据,有异常就调用发送邮件的代码,这样就不需要WebBrowser了。

读书人网 >C#

热点推荐