2012-07-21 14 views
8

क्या POST का उपयोग कर सर्वर को डेटा भेजना संभव है?फ़ायरबग: फायरबग कंसोल में पोस्ट डेटा कैसे भेजें?

Ie) मैं यूआरएल को पोस्ट डेटा भेजने के लिए चाहते हैं:

http://www.a.com/b?cmd=tt 
पोस्ट डेटा के साथ

:

a=1 
b=2 

यह संभव है और कैसे है? इसी तरह की एक प्रश्न पर माइक कूपर से

उत्तर

8

उद्धरण:

जहाँ तक मुझे पता है, Firebug ऐसा नहीं कर सकते। हालांकि, फायरबग की भावना में, एक बहुत उपयोगी फ़ायरफ़ॉक्स एक्सटेंशन है, जिसे Tamper Data कहा जाता है। यह वही करने में सक्षम होना चाहिए जो आप चाहते हैं।

यह आपको ब्राउज़र द्वारा किए गए प्रत्येक अनुरोध की निगरानी करने की अनुमति देता है, और आप एक विकल्प चालू कर सकते हैं जो आपको भेजे जाने से पहले प्रत्येक अनुरोध को देखने और संपादित करने की अनुमति देता है।

स्रोत पर अन्य उत्तर देखें: How do I POST to a web page using Firebug?
यह भी देखें: Using Firebug to send form data


ऊपर काम करता है, तो आप बस HTTP अनुरोध संशोधित करना चाहते हैं, लेकिन वास्तव में HTTP अनुरोध बनाने के लिए, वहाँ एक फ़ायरफ़ॉक्स है एक्सटेंशन Poster कहा जाता है, जिसमें निम्न वर्णन है:

इंटरैक्टिंग के लिए एक डेवलपर टूल वेब सेवाओं और अन्य वेब संसाधनों के साथ आपको HTTP अनुरोध बनाने, इकाई निकाय सेट करने और सामग्री प्रकार करने देता है। यह किसी भी डोमेन के लिए,

12

वास्तव में, आप अब (Firefox 3.5 के बाद से) बना सकते हैं Firebug से शुद्ध XHR पोस्ट आप वेब सेवाओं के साथ बातचीत और परिणामों का निरीक्षण करने की अनुमति देता है ..., तुम बस पर शुद्ध जावास्क्रिप्ट में की तरह पृष्ठ, एक ही प्रतिबंध के विषय के साथ।

कोड बिल्कुल ही आप कंसोल में अक्सर इसका इस्तेमाल करने के (जब तक आप यह स्टोर और हर बार कॉपी-पेस्ट)

पेस्ट चाहते हैं (यह कमान संपादक खोलता था स्वचालित रूप से थोड़ा लंबा और आसान नहीं है, के रूप में यह> 1 लाइन) है

var xhr = new XMLHttpRequest(); 
xhr.open("POST", "http://test/xhrtest.php?w=www"); 
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 
xhr.send("a=aaa&b=bbb"); 

कि सर्वर साइड पर याद रखो, तुम चाहिए enable CORS, Firebug (अन्यथा में प्रतिक्रिया को देखने के लिए, अनुरोध, भेजा जाएगा, लेकिन आप Firebug में प्रतिक्रिया नहीं देख सकेंगे; आप इसे Fiddler में देख सकते हैं); यदि आप पेज http://foo/somepage पर फ़ायरबग खोलते हैं, तो वह यूआरएल HTTP रेफरर हेडर फ़ील्ड में एक्सएचआर द्वारा भेजा जाएगा, और उस डोमेन को Access-Control-Allow-Origin हेडर के माध्यम से एक्सएचआर प्रतिक्रिया प्राप्त करने की अनुमति दी जानी चाहिए जिसे आप सर्वर कॉन्फ़िगरेशन में सेट कर सकते हैं, या सीधे पृष्ठ में।PHP में

उदाहरण:

<?php 
header('Access-Control-Allow-Origin: *'); 
//you can adjust it more fine-grained, perhaps in an 'if' 
//header('Access-Control-Allow-Origin: ' . $_SERVER['HTTP_ORIGIN']); 
//header('Access-Control-Allow-Origin: http://foo'); 

echo $_POST['a'] . "\r\n"; 
echo $_POST['b'] . "\r\n"; 
echo $_GET['w'] . "\r\n"; 
?> 

तो फिर तुम (और यह भी Console टैब में अगर आप Console > RIGHT CLICK > Show XMLHttpRequest विकल्प भी सक्षम कर) Firebug के Net टैब का उपयोग प्रतिक्रिया का निरीक्षण कर सकते हैं।

+1

उपयोग [encodeURIComponent] (https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/encodeURIComponent) आप वर्णों का उपयोग करना चाहते हैं पोस्ट किए गए चर में '&' की तरह। –

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