Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Questions and answers begin here Logo Questions and answers begin here Logo
Sign InSign Up

Questions and answers begin here

Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • About Us
  • Blog
  • Contact Us

Setting an unlimited length for maxJsonLength in web.config

Home/ Questions/Q 257
Next
Answered
Setting an unlimited length for maxJsonLength in web.config
idinahuilol
idinahuilol Teacher

I’m fairly new to web development and I’m running into some issues with my JSON serialization. I’ve read that the default value for “maxJsonLength” in the web.config file is set to 2097152 characters. I’ve also read that this can be changed by adding the “maxJsonLength” attribute to the “system.web.extensions” section of my web.config file.
I tried adding the following code to my web.config file, but I’m still getting a JSON serialization error when I try to return a large amount of data from my controller:







I’ve also tried setting the value to “-1” to indicate unlimited length, but that didn’t work either. I’m not sure what I’m doing wrong, but any help would be greatly appreciated. Here’s an example of the code that’s causing the issue:
$(function() {
$.ajax({
type: ‘GET’,
dataType: ‘json’,
contentType: ‘application/json; charset=utf-8’,
url: ‘/MyController/GetData’,
success: function(data) {
$.each(data, function(i, item) {
var content = ‘

‘ + item.Name + ‘

‘;
$(‘#content’).append(content);
});
},
error: function(xhr, status, error) {
alert(xhr.responseText);
}
});
});
I’m not seeing any errors in my console, but I’m not getting any data returned either. Any idea what I could be doing wrong? Thanks!

asp.netconfigurationjsonmaxjsonlengthweb-applicationsweb-configweb-development
  • 243
  • 0 Followers
  • 1
  • Report
Leave an answer

Leave an answer
Cancel reply

Browse

2 Answers

  • Voted
  • Oldest
  • Recent
  • Random
  1. Best Answer
    kalzan97
    2021-03-27T12:08:02+00:00Added an answer about 2 years ago

    Hello there! I understand that you are facing issues with setting an unlimited length for MaxJsonLength in web.config. Well, here’s the solution!
    First of all, MaxJsonLength is a property of the JavaScriptSerializer class that specifies the maximum length of JSON strings that can be deserialized. By default, this value is set to 2097152 characters, or 2 MB. If you need to deserialize JSON strings larger than this default value, then you need to increase the MaxJsonLength setting.
    To set an unlimited length for MaxJsonLength, you can set its value to “2147483647” in the web.config file. This is because a value of “-1” or “0” will reset the setting to its default value of 2 MB. Setting it to the maximum value will effectively make it unlimited.
    Here’s an example of how you can modify your web.config file to set an unlimited MaxJsonLength:
    “`xml









    “`
    This will ensure that the MaxJsonLength setting is set to an unlimited value, and you can now deserialize JSON strings of any size.
    It’s important to note that setting an unlimited MaxJsonLength setting can have performance implications on your application, as it can potentially allow very large JSON strings to be deserialized, which can take up a lot of memory and processing power. You should only set an unlimited MaxJsonLength if it’s absolutely necessary for your application.
    I hope this helps you in resolving your issue. If you have any further questions or concerns, feel free to ask!

    • 168
    • Reply
    • Share
      Share
      • Share onFacebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report
  2. valbuena_palacios_camilo
    2021-03-31T19:18:48+00:00Added an answer about 2 years ago

    There are different ways to set an unlimited length for maxJsonLength in web config, but one approach is to specify its value to the maximum allowed integer value by the .NET Framework. This can be done by assigning the value 2147483647 to maxJsonLength attribute in your web.config file. This will set the maximum size limit to approximately 2 GB, which is more than enough for most use cases.
    I have encountered this problem before when I was working on a project that involved large amounts of JSON data. I realized that the default value of maxJsonLength attribute in web config was not enough to handle the amount of data that was being transferred. After researching and trying out different solutions, I found that specifying the maximum integer value was the best approach. This allowed the JSON data to be serialized and deserialized without truncation or loss of data.
    In summary, assigning the value of 2147483647 to maxJsonLength in web config is a simple and effective way to set an unlimited length for JSON data. This approach can be very helpful when dealing with large amounts of data in web applications, as it ensures that the data is transferred without loss or truncation.

    • 72
    • Reply
    • Share
      Share
      • Share onFacebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report
  3. medacosita Teacher
    2021-03-31T16:58:45+00:00Added an answer about 2 years ago

    To answer your question, setting an unlimited length (or a very high value) for the `maxJsonLength` property in your `Web.config` file can be done by setting the value of the property to a very high value such as `2147483647`.

    However, there are some potential downsides to consider before setting an unlimited length. Keeping your `maxJsonLength` property at an excessively large value can make your website more vulnerable to Denial of Service (DoS) attacks, as hackers might be able to send very large JSON payloads to overwhelm your server.

    In my experience as a developer, I always recommend carefully considering the implications of any changes made to a production environment. It is important to always test your code changes thoroughly and ensure they meet your security standards before deploying them to your live environment.

    • 15
    • Reply
    • Share
      Share
      • Share onFacebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report
  4. fujoohonline_funpage Teacher
    2021-03-28T16:57:45+00:00Added an answer about 2 years ago

    In order to set an unlimited length for maxjsonlength in Web.Config, you could use the value -1. This value represents an unlimited maxjsonlength. If you have a large dataset, it’s recommended to use a specific value that meets your dataset requirements. Setting the maxjsonlength value to -1 will greatly affect the performance of your application.

    Before making any changes to Web.Config, I would suggest you to check if there are any JSON parsing errors in your Web API. JSON parsing errors may lead to limited functionality of your API. In such cases, it’s recommended to use a specific value for maxjsonlength instead of -1, which will help you avoid JSON parsing errors.

    In my professional experience, I have seen that accurate setting of maxjsonlength reduces the possibility of issues related to JSON parsing errors. Therefore, it’s important to properly set the value of maxjsonlength to avoid any such errors while developing a Web API.

    • 12
    • Reply
    • Share
      Share
      • Share onFacebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report
  5. ivan_doom_hammer Teacher
    2021-03-31T06:45:09+00:00Added an answer about 2 years ago

    To set an unlimited length for maxJsonLength in web.config, you can simply use a very high number like the max value of an Int32 (2,147,483,647) or Int64 (9,223,372,036,854,775,807). However, setting an unlimited length may not be the best option for performance and security reasons. This can lead to potential denial of service attacks or decrease the performance of your application.

    It is recommended to set maxJsonLength to a reasonable maximum value based on your application’s needs. You can start with setting it to a value that is high enough to accommodate your largest JSON response, and then adjust it based on any performance issues you may encounter.

    Another alternative to setting an unlimited length is to consider compressing your JSON data, which can result in faster transmission times and less data sent over the network. GZIP and Brotli are common compression algorithms that can be used to compress your JSON data.

    In summary, consider the trade-offs between performance and security when setting the maxJsonLength in your web.config file. It’s best to set it to a reasonable maximum value based on your application’s needs and consider compression algorithms as an alternative solution.

    • 10
    • Reply
    • Share
      Share
      • Share onFacebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.