自託管中不支持HttpContext。使用web api自託管獲取客戶端的IP地址
當我跑我的自我託管的內存集成測試那麼這段代碼無法正常工作或:
// OWIN Self host
var owinEnvProperties = request.Properties["MS_OwinEnvironment"] as IDictionary<string, object>;
if (owinEnvProperties != null)
{
return owinEnvProperties["server.RemoteIpAddress"].ToString();
}
owinEnvProperties總是空。
那麼我該如何使用自託管獲得客戶IP地址?
你使用的是「內存中」還是「自主」?由於沒有網絡交互,因此執行「內存」操作時不會有IP地址。 –
我的集成測試不啓動owin主機,而是在內存中測試web api請求管道。好吧,我認爲我至少得到了本地主機,但你應該從哪裏來:p – Pascal
「因爲沒有網絡交互」那麼我必須真正重新思考我是否希望使用新的HttpSelfHostServer進行快速內存中測試或真正的自我主機測試(配置).OpenAsync()等...然後HttpServer給我什麼,除了錯誤和解決方法... – Pascal