2012-10-28 32 views
7

अद्यतन करते समय मुझे जेएस एसडीके का उपयोग करके parse.com पर एक टेबल अपडेट करने का प्रयास करते समय 'POST 400 खराब अनुरोध' त्रुटि मिल रही है।'पोस्ट 400 खराब अनुरोध' त्रुटि parse.com तालिका

var Gallery = Parse.Object.extend("Gallery"); 
var gallery = new Gallery(); 
var activeArtworks = 0; 
gallery.save(null, { 
    success: function(gallery) { 
      gallery.set("activeArtworks", activeArtworks); 
      gallery.save(); 
    } 
}); 

कृपया मदद करें!

मैं नहीं देख सकते हैं कि यह कैसे पार्स here

+0

क्या आप वास्तविक http अनुरोध पर क्रोम डीबगर देख सकते हैं जो 400 लौट रहा है और इसे आपके प्रश्न में शामिल करता है? – bklimt

+0

निश्चित रूप से @bklimt कर सकते हैं। यहां यह है: पोस्ट https://api.parse.com/1/classes/galleries/cn5t2w81qN 400 (खराब अनुरोध) पार्स-1.0.0.min.js: 1 b._ajax parse-1.0.0.min। जेएस: 1 b._request parse-1.0.0.min.js: 1 c.extend.save parse-1.0.0.min.js: 1 gallery.save.success fgcViewartwork.js: 211 c.extend .save.p.success parse-1.0.0.min.js: 1 b._ajax.g.onreadystatechange – vedran

+0

इस तथ्य को अनदेखा करें कि API अनुरोध में "/ गैलरी /" और मेरे कोड में गैलरी नाम मेल नहीं खाता है यहाँ। मैंने कुछ समय पहले तय किया है - यह समस्या नहीं है – vedran

उत्तर

4

नमूना कोड आप संदर्भ बचाने() विधि सेट करने से पहले इसके मापदंडों के सभी बनाता द्वारा प्रदान की नमूना कोड के लिए किसी भी अलग है। यह वह कदम है जिसे आप याद कर रहे हैं; आपको अपने गैलरी इंस्टेंस पर सक्रिय आर्टवर्क पैरामीटर बनाना होगा। आपका अपडेट विफल हो रहा है क्योंकि आप ऐसी संपत्ति को अपडेट करने का प्रयास कर रहे हैं जो कभी नहीं बनाया गया था।

मैं इस कोड काम करने के लिए, हालांकि मैं यह परीक्षण नहीं किया क्योंकि parse.com किसी भी कोड है, जो मूर्ख है चलाने के लिए एक खाते की स्थापना करने की आवश्यकता है उम्मीद करेंगे, और मैं एक बनाने की तरह महसूस नहीं किया था:

var Gallery = Parse.Object.extend("Gallery"); 
var gallery = new Gallery(); 
var activeArtworks = 0; 
gallery.activeArtworks = []; // or some more appropriate default if you have one. 
gallery.save(null, { 
    success: function(gallery) { 
     gallery.set("activeArtworks", activeArtworks); 
     gallery.save(); 
    } 
}); 

यह भी जाँच के लायक वहाँ 400 त्रुटि के शीर्ष लेख में किसी भी जानकारी (आपके ब्राउज़र अपने नेटवर्क टैब में इन दिखाएगा में डिबग सांत्वना) अगर हो सकता है। मैं उम्मीद करता हूं कि पार्स आपको समस्याओं को डीबग करने में मदद के लिए कुछ प्रकार की जानकारी दे, और यही वह जगह है जो HTTP त्रुटि के लिए उपयुक्त होगी।

0

यदि आपने Parse JS के साथ user.logIn (कॉलबैक) फ़ंक्शन का उपयोग किया था, तो शायद आपका सत्र अमान्य हो। error.code==209 (अमान्य सत्र टोकन), Parse.User.logOut() का उपयोग करें और फिर से लॉगिन करें, कृपया अपना कॉलबैक फ़ंक्शन त्रुटि कोड देखें।

इस तरह

:

if (error.code == 209) {  
    Parse.User.logOut(); 
    user.logIn(loginCallback); 
    return; 
} 
0

मैं इस एक ही मुद्दा था और यह एहसास है कि डेटा प्रकार है कि मैं पोस्टिंग हो रही थी कॉलम है कि मैं बनाया था में निर्दिष्ट है कि करने के लिए अलग था के बाद हल किया गया था। मेरे मामले में, मैं कक्षा में कॉलम बनाते समय एक सरणी निर्दिष्ट करते समय ऑब्जेक्ट को सहेजने का प्रयास कर रहा था।

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