2011-02-16 132 views
1

我有一个C#服务器,它将接受来自游戏/客户端的连接并将数据库中的信息返回给游戏/客户端。发送HTTP响应而不接收请求

客户端发布一个xml文件。我想发送一个200 OK回应给客户。

我尝试了很多东西。任何人都可以提出建议我还需要对HTTP 1.0的回复。

谢谢。

+5

你尝试了很多东西。你可以跟我们分享吗?这可能会澄清并阻止一些人重新发明你的车轮,这对你没有任何帮助。 – rene 2011-02-16 23:05:41

+0

[手动设置响应状态码]的可能重复(http://stackoverflow.com/questions/678433/setting-response-status-code-manually) – NotMe 2011-02-16 23:10:28

+0

我尝试使用Http Response类和HttpWebResponse类以及。然而,输出流似乎是一个文本编写者。我只是想让它在整个网络中流回。我想做类似于Java的BasicHttpResponse的东西。谢谢。 – 2011-02-16 23:21:32

回答

0

如果您希望编写一个应用程序,该应用程序提供响应的Web请求并希望它(相对)轻量级,至少在IIS方面,请尝试查看Kayak Project。看起来很接近你打算做的事情。

This thread在邮件列表中似乎特别相关。

0

你的问题是如此混乱......“发回”无标题的请求......但请求完成时你解释后全部问题...

反正,我不知道如果这是你想要做的,但可以使用HttpResponse类的Status和StatusCode属性发送你自己的头文件。

0

所以我没有真正理解http响应。在回复结束时,我忘了寄回两份CRLF。非常感谢。

--definitions: CRLF = "\r\n"; s = NetworkStream(). 


StringBuilder str = new StringBuilder(); 
str.Append("HTTP/1.0 200 OK\r\n"); 
str.Append("Date: Tue, 17 Aug 2011 11:40:00 EST\r\n"); 
str.Append("Server: Apache\r\n"); 
str.Append("Content-Type: text/xml\r\n"); 
str.Append("Content Length: 128\r\n"); 

byte [] r = Encoding.ASCII.GetBytes(str.ToString() + CRLF+ CRLF); 
s.Write(r, 0, r.Length); 
相关问题