我正在使用针对固定规范的通用 ClientBase 基类创建 WCF POX 代理。
该规范包含通过对端点的 POST 调用创建的项目。没有body响应包,header状态为(201 Created),header集合中item的ID,key为Location。
正在创建该项目,但我的 WCF 代理引发以下错误:
Unexpected end of file
我已经开始创建自定义 IClientMessageFormatter 但是:
IClientMessageFormatter.DeserializeReply(Message message, object[] parameters)
仍然被叫到很晚。我假设,为了在读取 responseStream 之前拦截它,我必须在 Behavior 类中更深入地挂钩。
任何帮助将不胜感激。
修订 1。
HTTP/1.1 201 Created
Server: nginx/1.0.5
Date: Thu, 13 Oct 2011 23:52:34 GMT
Content-Type: application/xml; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
Status: 201 Created
X-Throttle-Max: 500
X-Throttle-Count: 1
Location: https://sample.com/categories/1.xml
X-Throttle-Horizon: 2011-10-13T23:52:40Z
X-Runtime: 232
Set-Cookie: transition_token=BAhbB2kD8bSUSXU6CVRpbWUNwOUbwAkZIdIGOh9AbWFyc2hhbF93aXRoX3V0Y19jb2VyY2lvblQ%3D--de2dc7f909ce89e0ce9f2307ac43ddfc171442b7; path=/; secure
Set-Cookie: _sample_session=BAh7BzoQaWRlbnRpdHlfaWRpA2eiKjoPc2Vzc2lvbl9pZCIlNGVlNWMzNWY4MzdmZmM3MGNlNzE1ZjdjZmM5MDhmYmY%3D--d8927e076329846e844f9f73b4d587c697628481; path=/; HttpOnly; secure
Cache-Control: no-cache
Strict-Transport-Security: max-age=31536000
1
0
以上是回复。它既没有正文,也没有 content-type = application/xml。由于某种原因,WCF 不知道如何协调这一点。所以,这就是为什么我试图在读取 responseStream 之前拦截 WCF 绑定或行为。
我想看看是否有人可以为我指出正确的方向。谢谢。