Scott Allen Posted April 21, 2021 Posted April 21, 2021 (edited) I've been reading all the posts I can here about this -200 Error. I gather that is an unspecified error pointing to an issue outside IPS that it cannot identify, such as the server software running IPS. But I have verified to the best of my ability that these are correct, wondering if I am getting a false positive here though. The image is a cellphone photograph of a computer, 3.48 MB and 3024x4032 resolution -- when I drag and drop this into a forum post (such as this one) on our website, it uploads and inserts just fine. When I do this within the Gallery, I get the Error -200 and the upload fails every time. This does not happen with smaller image files. I have found that is irrespective of .jpg or .png and both can fail (or succeed if small enough), I have not pinned down the specific size for failure beyond 1000kb - again, all settings are as recommended. The post here suggests that this user was able to add a missing variable declaration and I am wondering if something like this may be required in the case of the Gallery:https://invisioncommunity.com/forums/topic/460118-ipshelpersformupload-field-returns-error-code-200/?tab=comments#comment-2842332 When viewing the browser developer console, for a failed upload, I see the following information: Quote (index):1 [Deprecation] ::-webkit-details-marker pseudo element selector is deprecated. Please use ::marker instead. See https://chromestatus.com/feature/6730096436051968 for more details. root_library.js?v=59674f21b51618538899:10 JQMIGRATE: Migrate is installed with logging active, version 3.3.0 root_library.js?v=59674f21b51618538899:12 JQMIGRATE: jQuery.fn.bind() is deprecated migrateWarn @ root_library.js?v=59674f21b51618538899:12 bind @ root_library.js?v=59674f21b51618538899:49 bind @ root_library.js?v=59674f21b51618538899:56 h.initCore @ root_library.js?v=59674f21b51618538899:56 h.init @ root_library.js?v=59674f21b51618538899:56 (anonymous) @ root_library.js?v=59674f21b51618538899:56 (anonymous) @ root_library.js?v=59674f21b51618538899:56 root_library.js?v=59674f21b51618538899:12 console.trace migrateWarn @ root_library.js?v=59674f21b51618538899:12 bind @ root_library.js?v=59674f21b51618538899:49 bind @ root_library.js?v=59674f21b51618538899:56 h.initCore @ root_library.js?v=59674f21b51618538899:56 h.init @ root_library.js?v=59674f21b51618538899:56 (anonymous) @ root_library.js?v=59674f21b51618538899:56 (anonymous) @ root_library.js?v=59674f21b51618538899:56 root_library.js?v=59674f21b51618538899:12 JQMIGRATE: JQMIGRATE: jQuery.cssProps is deprecated migrateWarn @ root_library.js?v=59674f21b51618538899:12 set @ root_library.js?v=59674f21b51618538899:32 (anonymous) @ root_library.js?v=59674f21b51618538899:60 (anonymous) @ root_library.js?v=59674f21b51618538899:60 root_library.js?v=59674f21b51618538899:12 console.trace migrateWarn @ root_library.js?v=59674f21b51618538899:12 set @ root_library.js?v=59674f21b51618538899:32 (anonymous) @ root_library.js?v=59674f21b51618538899:60 (anonymous) @ root_library.js?v=59674f21b51618538899:60 root_library.js?v=59674f21b51618538899:71 This is a browser feature intended for developers. Do not paste any code here given to you by someone else. It may compromise your account or have other negative side effects. root_library.js?v=59674f21b51618538899:2 [Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/. send @ root_library.js?v=59674f21b51618538899:2 ajax @ root_library.js?v=59674f21b51618538899:2 jQuery.ajax @ root_library.js?v=59674f21b51618538899:23 S._evalUrl @ root_library.js?v=59674f21b51618538899:2 Pe @ root_library.js?v=59674f21b51618538899:2 append @ root_library.js?v=59674f21b51618538899:2 (anonymous) @ root_library.js?v=59674f21b51618538899:2 $ @ root_library.js?v=59674f21b51618538899:2 html @ root_library.js?v=59674f21b51618538899:2 t.fn.html @ root_library.js?v=59674f21b51618538899:57 newHtml @ root_library.js?v=59674f21b51618538899:69 updateContent @ root_framework.js?v=59674f21b51618538899:274 (anonymous) @ root_framework.js?v=59674f21b51618538899:284 c @ root_library.js?v=59674f21b51618538899:2 fireWith @ root_library.js?v=59674f21b51618538899:2 l @ root_library.js?v=59674f21b51618538899:2 (anonymous) @ root_library.js?v=59674f21b51618538899:2 load (async) send @ root_library.js?v=59674f21b51618538899:2 ajax @ root_library.js?v=59674f21b51618538899:2 jQuery.ajax @ root_library.js?v=59674f21b51618538899:23 _fetchContent @ root_framework.js?v=59674f21b51618538899:284 _remoteDialog @ root_framework.js?v=59674f21b51618538899:279 show @ root_framework.js?v=59674f21b51618538899:270 respond @ root_framework.js?v=59674f21b51618538899:261 _callWidget @ root_framework.js?v=59674f21b51618538899:73 (anonymous) @ root_framework.js?v=59674f21b51618538899:73 E @ root_library.js?v=59674f21b51618538899:1 r @ root_library.js?v=59674f21b51618538899:1 dispatch @ root_library.js?v=59674f21b51618538899:2 v.handle @ root_library.js?v=59674f21b51618538899:2 VM1269:1 Instantiating FileInput... VM1269:1 Trying runtime: html5 VM1269:1 {accept: Array(1), multiple: false, required_caps: {…}, container: div#ips_uid_3773_6.ipsAttachment_dropZone.ipsAttachment_dropZoneSmall.ipsClearfix, runtime_order: "html5,flash,silverlight,html4", …} VM1269:1 default mode: browser VM1269:1 selected mode: browser VM1269:1 Runtime 'html5' initialized VM1269:1 Instantiating FileDrop... VM1269:1 Trying runtime: html5 VM1269:1 {accept: Array(1), required_caps: {…}, runtime_order: "html5,flash,silverlight,html4", preferred_caps: {…}, swf_url: "applications/core/interface/plupload/Movie.swf", …} VM1269:1 default mode: browser VM1269:1 selected mode: browser VM1269:1 Runtime 'html5' initialized VM1269:1 Instantiating FileInput... VM1269:1 Trying runtime: html5 VM1269:1 {accept: Array(1), multiple: true, required_caps: {…}, container: div#ips_uid_3773_9.ipsAttachment_dropZone.ipsClearfix, runtime_order: "html5,flash,silverlight,html4", …} VM1269:1 default mode: browser VM1269:1 selected mode: browser VM1269:1 Runtime 'html5' initialized VM1269:1 Instantiating FileDrop... VM1269:1 Trying runtime: html5 VM1269:1 {accept: Array(1), required_caps: {…}, runtime_order: "html5,flash,silverlight,html4", preferred_caps: {…}, swf_url: "applications/core/interface/plupload/Movie.swf", …} VM1269:1 default mode: browser VM1269:1 selected mode: browser VM1269:1 Runtime 'html5' initialized VM1269:1 POST https://veterans-gaming.com/gallery/submit/?category=5&noAlbum=1 413 send @ VM1269:1 exec @ VM1269:1 shimExec @ VM1269:1 exec @ VM1269:1 r @ VM1269:1 I @ VM1269:1 send @ VM1269:1 m @ VM1269:1 d @ VM1269:1 E @ VM1269:1 dispatchEvent @ VM1269:1 trigger @ VM1269:1 i @ VM1269:1 start @ VM1269:1 _startUpload @ root_framework.js?v=59674f21b51618538899:695 filesAdded @ root_framework.js?v=59674f21b51618538899:708 dispatchEvent @ VM1269:1 trigger @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 setTimeout (async) (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 r @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 r @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 r @ VM1269:1 s @ VM1269:1 a @ VM1269:1 (anonymous) @ VM1269:1 r @ VM1269:1 s @ VM1269:1 addFile @ VM1269:1 e.ondrop @ VM1269:1 (anonymous) @ VM1269:1 (anonymous) @ VM1269:1 r @ VM1269:1 s @ VM1269:1 dispatchEvent @ VM1269:1 trigger @ VM1269:1 (anonymous) @ VM1269:1 f @ VM1269:1 (anonymous) @ VM1269:1 The failed upload on line 107, about 30 lines up from the bottom "setTimeout (async)" occurs. On the networking panel, it shows the extreme time taken to fail: I am curious if the solution noted below is the key to this issue but I do not know how to test or proceed - any help would be appreciated: On 1/7/2021 at 8:15 AM, Cory_DSL said: Turns out the module controller class doesn't have: public static $csrfProtected = true; when created via Developer Center, so I added it. The file system/Dispatcher/Admin.php checks if the class is csrfProtected... Edited April 21, 2021 by Scott Allen
CoffeeCake Posted April 21, 2021 Posted April 21, 2021 Are you using gd or imagemagick? You should enable logging for PHP and see what errors you get from whichever extension you're using.
Scott Allen Posted April 22, 2021 Author Posted April 22, 2021 21 hours ago, CoffeeCake said: Are you using gd or imagemagick? You should enable logging for PHP and see what errors you get from whichever extension you're using. Not sure - forwarded the question to our SysAdmin. Does it matter if we are using gd or imagemagick? What is the difference? Why does this issue only appear for the Gallery and nowhere else? Is it because image uploads through the Gallery follow different rules for timeout or file sizes?
CoffeeCake Posted April 22, 2021 Posted April 22, 2021 No idea. The logs should help reveal what's going on. Scott Allen 1
Moukah Posted April 30, 2021 Posted April 30, 2021 Hello, exactly the same problem here... I have no issue when I add a large image in a post, but with the gallery over 1Mb and I have an Error 200
Moukah Posted May 3, 2021 Posted May 3, 2021 I finally used GD instead of ImageMagick to solve 2 problems - The first one was my web hosting (Hostinger) which have only 60s to execute a PHP script for the basic plan - The second was to upload a 3024x4032 resolution image Hope it helps
Recommended Posts