Have to set lenient on JsonReader for RPC
See original GitHub issueI am trying to connect to a basic auth web3 node. If basic auth fails, it returns back non-json text to say that you’re not authenticated… You have to set leninet = true for moshi to be able to return this text back without the client failing. Or perhaps check if it’s json, if not jsonify it before handing it to moshi?
Caused by: com.squareup.moshi.JsonEncodingException: Use JsonReader.setLenient(true) to accept malformed JSON at path $
at com.squareup.moshi.JsonReader.syntaxError(JsonReader.java:220)
at com.squareup.moshi.JsonUtf8Reader.checkLenient(JsonUtf8Reader.java:1031)
at com.squareup.moshi.JsonUtf8Reader.doPeek(JsonUtf8Reader.java:344)
at com.squareup.moshi.JsonUtf8Reader.peek(JsonUtf8Reader.java:171)
at com.squareup.moshi.JsonAdapter$2.fromJson(JsonAdapter.java:134)
at com.squareup.moshi.JsonAdapter.fromJson(JsonAdapter.java:36)
at org.kethereum.rpc.EthereumRPC.getBlockNumberString(EthereumRPC.kt:34)
Issue Analytics
- State:
- Created 5 years ago
- Comments:5 (3 by maintainers)
Top Results From Across the Web
Use JsonReader.setLenient(true) to accept malformed ...
This is a well-known issue and based on this answer you could add setLenient : Gson gson = new GsonBuilder() .setLenient() .create(); Retrofit...
Read more >Example usage for com.google.gson.stream JsonReader ...
Introduction. In this page you can find the example usage for com.google.gson.stream JsonReader setLenient. Prototype. public final void setLenient(boolean ...
Read more >“com.google.gson.stream.MalformedJsonException: Use ...
com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON. javascript by Uptight Unicorn on Aug 23 2020 ...
Read more >pact-jvm
when i try to download using the above plugin i get the following error ``` com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) ...
Read more >Use JsonReader.setLenient(true) to accept malformed ...
Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 1 path $. Home ...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
I think it should throw an exception - perhaps it should be a different exception though. Like NotAuthenticatedException. So I think the solution would be to check if the code is != 200 -> and if it is unauthenticated -> throw this error
@ligi Sure please do! It isn’t exposed publicly but you can can your own instance at https://kaleido.io/ it’s really easy to create one. Let me know if you have any questions!