Code 500 A JSON Array text must start with '['...

1852
4
Jump to solution
03-08-2017 05:10 AM
TL2
by
Occasional Contributor III

I get this error and am not sure why...

I am able to sign in to my portal, download surveys.  When I try to submit I get this error.

Any advice?

JTedrick-esristaff

0 Kudos
1 Solution

Accepted Solutions
ShobanaSuresh
Esri Contributor

Hi Tucker,

To fix this issue, please modify below code in Survey123 App XForms/XFormFeatureService.qml file

var formData = {

            "edits": encodeURIComponent(JSON.stringify(edits)),

            "rollbackOnFailure": true,

            "useGlobalIds": useGlobalIds

}

to

var formData = {

            "edits": JSON.stringify(edits),

            "rollbackOnFailure": true,

            "useGlobalIds": useGlobalIds

}

Thanks

Shobana

View solution in original post

4 Replies
TL2
by
Occasional Contributor III

After further investigation I have determined that Cloud Make using the AppStudio 1.3.46 is breaking my apps.  

Any app that was Built with the 1.3.46 version a week or so ago works fine, any app recently Made with AppStudio 1.3.46 will break the EXACT same app.  

I would guess that since the AppStudio upgrade for the new version is has broken the AppStudio 1.3.46 Make.

 I would guess that I need to upgrade to the new version of AppStudio, it would appear that AppStudio 1.3.46 is NOT COMPATIBLE with the new Cloud Make!

0 Kudos
JamesTedrick
Esri Esteemed Contributor

Hi Tucker,

Yes, there is a change between 1.3 and 1.4 in how URL encoding is handled (we previously had a workaround implemented in Survey123) - SSuresh-esristaff‌ or elvin‌, could you provide guidance on if it's easy to adjust the workaround?

0 Kudos
TL2
by
Occasional Contributor III

I just upgraded to 1.4.18 and received the same results.

0 Kudos
ShobanaSuresh
Esri Contributor

Hi Tucker,

To fix this issue, please modify below code in Survey123 App XForms/XFormFeatureService.qml file

var formData = {

            "edits": encodeURIComponent(JSON.stringify(edits)),

            "rollbackOnFailure": true,

            "useGlobalIds": useGlobalIds

}

to

var formData = {

            "edits": JSON.stringify(edits),

            "rollbackOnFailure": true,

            "useGlobalIds": useGlobalIds

}

Thanks

Shobana