2013-03-11 8 views
6

मैं सर्वर से अनुरोध पोस्ट करने के लिए angularjs $http सेवा का उपयोग कैसे कर सकता हूं और परिणाम को एक नई ब्राउज़र विंडो में स्ट्रीम कर सकता हूं?Angularjs: नई विंडो पर http प्रतिक्रिया कैसे स्ट्रीम करें?

मेरी सेवा एक पीडीएफ रिपोर्ट को उत्पन्न और स्ट्रीम करती है जिसे मैं एक नई ब्राउज़र विंडो में खोलना चाहता हूं। अब तक मैं उन अनुरोधों को पोस्ट करने के लिए $http का उपयोग कर रहा हूं जो जेसन डेटा लौटाते हैं। मैं मॉडल को अद्यतन करने के लिए इसका इस्तेमाल कर सकता था। यह ठीक काम करता है। लेकिन अब मैं प्रतिक्रिया से डेटा निकालना नहीं चाहता, बस एक और विंडो में प्रदर्शित करें। शायद मुझे डेटा एक्सचेंज पैटर्न का उपयोग करने के बजाय निम्न स्तर की सेवा का उपयोग करना चाहिए?

$http(httpPostConfig).success(
    function(data, status, headers, config) { 
     ... 
    } 
).error(

    function(data, status, headers, config) { 
     ... 
    } 
); 
+4

क्या आपका सर्वर जेनरेट किए गए पीडीएफ का एक अद्वितीय पहचानकर्ता है और जेएस ($ विंडो के माध्यम से) सेवा का उपयोग करने के लिए एक नई विंडो खोलने के लिए सर्वर के साइड एंडपॉइंट पर इंगित करने वाला यूआरएल है जो पीडीएफ अद्वितीय पहचानकर्ता (उदाहरण के लिए '$ window.open ('/ पीडीएफ/6,234,556') ')। – Stewie

+0

@ स्टीवी धन्यवाद। अगर मैं यह समझ नहीं पा रहा हूं कि इसे कोणीय तरीके से कैसे किया जाए, तो मैं इस तरह के आसपास एक काम का उपयोग करूंगा। – Glenn

+0

बात यह है कि, जिस तरह से आपने कल्पना की थी उसे लागू करने के लिए आपका विचार संभव नहीं है। ऐसा करने का न तो एक कोणीय या जेएस तरीका है। आपके विचार की आवाज़ से मुझे ऐसा लगता है कि आप इसे दुनिया के जावा-आधारित दृश्य से देख रहे हैं। यदि मैं गलत हूं तो मुझे सही करों। ;-) – Stewie

उत्तर

5

अपने सर्वर उत्पन्न पीडीएफ की और से उपयोग $ खिड़की सेवा एक अद्वितीय पहचानकर्ता वापसी एक नई विंडो खोलने के साथ यह यूआरएल सर्वर की ओर से अंत बिंदु जो अद्वितीय पहचानकर्ता के आधार पर पीडीएफ रिटर्न की ओर इशारा करते है है (उदाहरण के लिए $window.open('/pdf/6234556')) ;

+1

"डायनामिक" सर्वर-साइड एंडपॉइंट बनाने के तरीके पर कोई सलाह है? –

संबंधित मुद्दे