2012-10-10 17 views
6

यह ServiceStack ग्राहक कोड काम करता है:सर्विसस्टैक जेसन सेवा क्लाइंट, स्थानीयहोस्ट के लिए तार पर यातायात को मजबूर करें?

var client = new JsonServiceClient("http://localhost:32949/test"); 
var request = new MyRequest { ClassificationId = new ClassificationId (21300) }; 
var response = client.Post(request); 

हालांकि, जब फ़िडलर में यातायात को देख, मैं कुछ भी नहीं देखते हैं। मुझे अन्य क्लाइंट्स के लिए आवश्यक JSON अनुरोध बनाने के तरीके पर बेहतर विचार प्राप्त करने के लिए यातायात का निरीक्षण करना होगा।

उपर्युक्त कोड कार्य करने के लिए, मुझे उस असेंबली का संदर्भ देना पड़ा जिसमें सेवा है, और मुझे संदेह है कि HTTPStact HTTP अनुरोध भेजने से बचने के लिए कुछ चालाक कॉल कर रहा है। क्या यह मामला है?

मुझे फिडलर में कोई ट्रैफ़िक क्यों नहीं दिख रहा है, और मैं इसे कैसे बल दूं?

ब्राउज़र के माध्यम से स्थानीयहोस्ट एंडपॉइंट्स पर HTTP ट्रैफ़िक सही ढंग से दिखाया गया है।

+0

? या एक होस्टनाम कहें जो आपकी मेजबान फ़ाइल में 127.0.0.1 को हल करता है? – wal

+1

127.0.0.1 एक ही परिणाम देता है। एक अलग मेजबाननाम, लेकिन मेजबान फ़ाइल में 127.0.0.1 को इंगित करता है, मुझे फिडलर में वांछित के रूप में यातायात देता है। धन्यवाद ! – driis

+0

मैं उत्तर के रूप में जोड़ूंगा – wal

उत्तर

6

संपादित अपने मेजबान फ़ाइल, पर

सी स्थित: \ Windows \ System32 \ drivers \ मेजबान आदि \

और निम्न प्रविष्टि जोड़ने

127.0.0.1 mymachine.com

तो mymachine.com बजाय localhost

के लिए अपने ग्राहक बात
+2

धन्यवाद, यह वह समाधान था जिसके साथ मैं गया था। यह काम करता है क्योंकि .NET ढांचा प्रॉक्सी के माध्यम से कोई स्थानीय अनुरोध नहीं भेजता है, लेकिन केवल स्थानीयहोस्ट के लिए एक और नाम परिभाषित करता है, काम करता है। फिडलर वास्तव में यह दस्तावेज करता है - यहां: http://www.fiddler2.com/fiddler/help/hookup.asp#Q- लोकल ट्रैफिक – driis

2

मैं यहां अपने प्रश्न का उत्तर दूंगा - टिप्पणीकर्ता @wal ने मुझे समस्या की ओर इशारा किया:

इसका सर्विसस्टैक से कोई लेना देना नहीं है, और अनुरोध वास्तव में http प्रोटोकॉल पर जाते हैं। समस्या स्थानीयहोस्ट पर वापस लूपिंग थी फिडलर के माध्यम से यातायात नहीं भेजा था। यह वास्तव में Fiddler2 FAQ page पर समझाया गया है।

1

अन्य चाल आपके मशीन नाम के साथ अपने "लोकलहोस्ट" यूरी को प्रतिस्थापित करना है, और इसे फिडलर के साथ बॉक्स से बाहर काम करना चाहिए।

http://machinename:port/test

ब्याज अगर आप अपने आईपी पते (लैन) के साथ स्थानीय होस्ट की जगह क्या होता है से बाहर