I am using the PUT verb to send JSON to a MVC controller. When I reach a certain limit I get a 500 error. If I scale back the JSON I send, then it sends just fine... Does anyone
Here is the answer... My JSON object was quite large so .NET wouldn't allow it to pass due to a "security feature" The default is 2000, so I bumped it and it worked perfectly.
<add key="aspnet:MaxJsonDeserializerMembers" value="5000"/>
Approach - 1
<configuration>
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength="50000000"/>
</webServices>
</scripting>
</system.web.extensions>
</configuration>
Approach - 2
<location path="File Path or FileHandler.ashx">
<system.web>
<httpRuntime executionTimeout="your value" maxRequestLength="Your value" />
</system.web>
</location>
Using this approach, we can set the limits for specific page and not for the complete application.
Approach - 3
<httpRuntime targetFramework="Your version" maxRequestLength="Your value" />
Using this approach, we can set the limits for complete application.
Check the maxRequestLength in your web.config. If the data exceeds maxRequestLength, 500 status is returned.
<httpRuntime targetFramework="4.5" maxRequestLength="XXX" />
Note: if maxRequestLength isn't specified. Default value is 4MB.
If that doesn't work, try IIS's Request Limits. Documentation however says that 404 status should be returned.