2012-03-01 15 views
52

मैं कोई फ़ॉर्म सबमिट पर पोस्ट शीर्षक में एक कस्टम फ़ील्ड कैसे निर्धारित कर सकते हैं?पोस्ट पर एक शीर्षलेख फ़ील्ड कैसे सेट करें?

+1

'का उपयोग XmlHttpRequest' आप क्या मतलब है? या सिर्फ एक सादा HTML फार्म पोस्ट? – Aliostad

+0

नहीं, मैं फॉर्म एक्शन का उपयोग कर रहा हूं: –

+1

पोस्ट करें यह नहीं किया जा सकता - AFAIK। – Aliostad

उत्तर

33

यह नहीं किया जा सकता - AFAIK।

हालांकि आप उदाहरण jQuery के लिए उपयोग कर सकते हैं (हालांकि आप सादे जावास्क्रिप्ट के साथ यह कर सकते हैं) फॉर्म को क्रमानुसार और (AJAX का प्रयोग करके) भेजने के अपने कस्टम हेडर को जोड़ते समय के लिए।

jquery serialize पर देखें जो एक HTML फॉर्म को form-url-encoded मूल्यों को POST के लिए तैयार करता है।

अद्यतन

मेरे सुझाव है शामिल करने के लिए या तो

  • एक छिपे फ़ॉर्म एलीमेंट
  • एक क्वेरी स्ट्रिंग पैरामीटर
+1

मैं इस मामले में AJAX का उपयोग नहीं कर सकता। किसी भी तरह, मैं एक एएसपीएक्स पेज पर पोस्ट और रीडायरेक्ट हूं। पोस्ट से पुनर्निर्देशन होता है। –

+1

मेरा सुझाव है या तो 1) एक छिपी हुई फॉर्म तत्व 2) एक क्वेरी स्ट्रिंग पैरामीटर – Aliostad

+1

क्या आप फ़ाइलों को क्रमबद्ध कर सकते हैं? मैंने सोचा: नहीं – Fallenreaper

1

आप $ .ajax इस्तेमाल कर सकते हैं की प्राकृतिक व्यवहार से बचने के लिए <form method="POST">। उदाहरण के लिए, आप सबमिशन बटन में एक ईवेंट जोड़ सकते हैं और POST अनुरोध को AJAX के रूप में मान सकते हैं।

+1

मैं इस फॉर्म का उपयोग * एस्पैक्स पेज पर * रीडायरेक्ट * पर सबमिट करता हूं और कुछ डेटा पोस्ट करता हूं। –

+0

मुझे बेहतर समझने के लिए: 1) उपयोगकर्ता पोस्ट 2) डेटा सहेजना 3) पुनर्निर्देशित करें। क्या आप यह करते हैं –

+0

मेरे पास एक HTML पृष्ठ (स्रोत) में iFrame है, जो किसी अन्य HTML पृष्ठ (प्रॉक्सी) पर इंगित करता है। प्रॉक्सी पेज किसी फॉर्म तत्व के माध्यम से कुछ पैरामीटर (नो गेट) पोस्ट करता है। पुनर्निर्देशन और पोस्ट फॉर्म जमा पर होता है। मैं एएसपीएक्स पेज में पोस्ट पैरामीटर को गंतव्य के रूप में पुनर्प्राप्त करता हूं। –

10

पेज पर एक कुकी मान सेट करें, और फिर इसे वापस पढ़ा सर्वर साइड।

आप किसी विशिष्ट शीर्ष लेख सेट करने के लिए सक्षम नहीं होगा, लेकिन मूल्य और हेडर अनुभाग में पहुंच नहीं सामग्री शरीर हो जाएगा।

3

FormData documantion से:

XMLHttpRequest स्तर 2 नए FormData इंटरफेस के लिए समर्थन जोड़ता। फॉर्मडाटा ऑब्जेक्ट्स फॉर्म फ़ील्ड और उनके मानों का प्रतिनिधित्व करने वाले कुंजी/मान जोड़े के सेट को आसानी से बनाने का एक तरीका प्रदान करते हैं, जिसे XMLHttpRequestsend() विधि का उपयोग करके आसानी से भेजा जा सकता है।

XMLHttpRequest के साथ आप कस्टम शीर्षलेख सेट कर सकते हैं और फिर POST कर सकते हैं।

1

यहाँ है कि मैं क्या पब/जेड

extends layout 
block content 
    script(src="/jquery/dist/jquery.js") 
    script. 
     function doThePost() { 
     var jqXHR = $.ajax({ 
      type:'post' 
      , url:<blabla> 
      , headers: { 
       'x-custom1': 'blabla' 
       , 'x-custom2': 'blabla' 
       , 'content-type': 'application/json' 
      } 
      , data: { 
       'id': 123456, blabla 
      } 
     }) 
     .done(function(data, status, req) { console.log("done", data, status, req); }) 
     .fail(function(req, status, err) { console.log("fail", req, status, err); }); 
     } 
    h1= title 
    button(onclick='doThePost()') Click 
1

वास्तव में ग्राहक के पक्ष पर एक कुकी को बचाने के लिए यह करने के लिए एक बेहतर तरीके से किया है। फिर कुकी को उस विशेष डोमेन के लिए स्वचालित रूप से प्रत्येक पृष्ठ शीर्षलेख के साथ भेजा जाता है।

res.cookie('token', "xyz....", { httpOnly: true }); 

अब आप इस का उपयोग कर सकते हैं: उदाहरण के लिए, नोड js में, आप एक कुकी इस तरह से सेट कर सकते हैं

httpOnly:true सुनिश्चित करता है
app.get('/',function(req, res){ 
var token = req.cookies.token 
}); 

ध्यान दें कि है कि कुकी आमतौर पर मैन्युअल रूप से या के माध्यम से सुलभ नहीं है जावास्क्रिप्ट और केवल ब्राउज़र इसका उपयोग कर सकते हैं। यदि आप किसी फॉर्म पोस्ट के साथ कुछ शीर्षलेख या सुरक्षा टोकन भेजना चाहते हैं, और AJAX के माध्यम से नहीं, तो अधिकांश स्थितियों में इसे एक सुरक्षित तरीका माना जा सकता है। हालांकि यह सुनिश्चित करें कि डेटा सुरक्षित प्रोटोकॉल/एसएसएल पर भेजा जाता है यदि आप कुछ संवेदनशील उपयोगकर्ता से संबंधित जानकारी संग्रहीत कर रहे हैं जो आमतौर पर मामला है।

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