xeugenx Posted April 16, 2022 Report Posted April 16, 2022 (edited) Hi, I'm currently trying to write a simple application that downloads a file in a manifest. I observed, that getManiFest sometimes fails and sometimes doesn't. Do you have any idea how I can further debug this? All im getting is an "Error: fail". My code: let client = new SteamUser(); client.logOn(); client.on('loggedOn', async (details) => { let productInfo = await client.getProductInfo([730], [], true); const latestManifestId = productInfo.apps['730'].appinfo.depots['731'].manifests.public; let result = await client.getManifest(730, 731, latestManifestId); console.log(result); client.logOff(); //console.log("Logged out of steam"); }); When debugging, I see that the "latestManifestId" is indeed correct, I checked it with steamdb. Edited April 17, 2022 by xeugenx Quote
Dr. McKay Posted April 17, 2022 Report Posted April 17, 2022 This might have to do with manifest request codes. Try supplying the branch name to getManifest, like so: let result = await client.getManifest(730, 731, latestManifestId, 'public'); Quote
xeugenx Posted April 17, 2022 Author Report Posted April 17, 2022 I tried logging in with an account that owns the game and also added what you said. Still the same error. Is there no way to get a better error description than just failed? Quote
Dr. McKay Posted April 18, 2022 Report Posted April 18, 2022 If you print the stack trace from the error, we can see exactly which request failed. There's a few involved in fetching a manifest. Quote
xeugenx Posted April 18, 2022 Author Report Posted April 18, 2022 Sry, forgot to paste that. Also I forgot to mention that I'm on the latest version (v4.24.3). (node:6356) UnhandledPromiseRejectionWarning: Error: Fail at Object.exports.eresultError (B:\Coden\js\Simple file downloader\node_modules\steam-user\components\helpers.js:105:12) at SteamUser.<anonymous> (B:\Coden\js\Simple file downloader\node_modules\steam-user\components\cdn.js:161:28) at SteamUser._handleMessage (B:\Coden\js\Simple file downloader\node_modules\steam-user\components\03-messages.js:633:35) at SteamUser._handleNetMessage (B:\Coden\js\Simple file downloader\node_modules\steam-user\components\03-messages.js:556:8) at SteamUser._processMulti (B:\Coden\js\Simple file downloader\node_modules\steam-user\components\03-messages.js:687:9) Seems to fail when trying to get a cdn auth token, but still no clue what I could be doing wrong. Quote
Dr. McKay Posted April 18, 2022 Report Posted April 18, 2022 As far as I know, not all content servers require auth tokens anymore and maybe the backend is no longer returning empty auth tokens for servers that don't require one. Or maybe they've fully moved all content servers away from requiring auth tokens. I'll have to do a little research to see which is the case. In the meantime, you could try editing cdn.js and replacing line 230: // Replace this: let {token} = await this.getCDNAuthToken(appID, depotID, vhost); // With this let token = ''; try { token = (await this.getCDNAuthToken(appID, depotID, vhost)).token; } catch (ex) { } Quote
xeugenx Posted April 18, 2022 Author Report Posted April 18, 2022 Thanks for the fast help, works with your fix 🙂 Dr. McKay 1 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.