token-dispenser icon indicating copy to clipboard operation
token-dispenser copied to clipboard

"Malformed request"

Open tygh-cpu opened this issue 5 years ago • 5 comments

Malformed request error

tygh-cpu avatar Aug 30 '19 00:08 tygh-cpu

Same issue here, anyone know how to fix? Some more details from the dispenser log here:

2019-08-30 02:54:58:860 -0700 INFO com.github.yeriomin.tokendispenser.Server - [email protected] found 2019-08-30 02:54:58:872 -0700 INFO com.github.yeriomin.tokendispenser.Server - Requesting: https://android.clients.google.com/auth 2019-08-30 02:54:59:103 -0700 WARN com.github.yeriomin.tokendispenser.Server - com.github.yeriomin.playstoreapi.GooglePlayException: Malformed request

SeBsZ avatar Aug 30 '19 09:08 SeBsZ

Solution here? https://github.com/matlink/gplaycli/issues/217

archon810 avatar Aug 30 '19 16:08 archon810

Adapted from my comment at https://github.com/matlink/gplaycli/issues/217#issuecomment-526498994 :

This recent issue is probably due to a change in how Google validates authentication requests. See https://github.com/NoMore201/googleplay-api/issues/93.

The token dispenser uses the play-store-api library to make the request to the Google servers. The "good" way to fix it is to fix the play-store-api library (I made a PR that needs to be merged), then update the token dispenser repository to use the newer play-store-api library.

If you're in a hurry, you can clone my fixed play-store-api version, mvn install it so that it replaces the play store api library in your Maven repository, then force recompile your token dispenser with mvn clean package.

Edit: You also need to update the play-store-api dependency in the pom.xml to 0.44.2 (the latest version).

delthas avatar Sep 03 '19 06:09 delthas

@delthas, thanks for those instructions. I'm giving this a try. You mention running mvn install on your fixed play-store-api version, but that doesn't work since there is no pom.xml in play-store-api. What I did was I ran mvn install:install-file -Dfile=play-store-api-0.44.2.jar -DgroupId=com.github.yeriomin -DartifactId=play-store-api -Dversion=0.44.2 -Dpackaging=jar on the jar file, after building it using gradlew as per the instructions in the repo. Is that correct, or was there a better way?

It's difficult to verify that mvn install or mvn clean package on token-dispenser actually uses the modified play-store-api and not the one from Yeriomin or Matlink (I'm using Matlink's token-dispenser fork that you worked on as well).

SeBsZ avatar Oct 03 '19 09:10 SeBsZ

Any update for this issue huhu :(

bugoverfl0w avatar May 20 '20 08:05 bugoverfl0w