Code Monkey home page Code Monkey logo

Comments (11)

tivac avatar tivac commented on June 2, 2024

That's a generic error message, and a 20x response code would be inappropriate for bad parameters from a client.

That said, this appears to be a bug & I'll try to poke at it tomorrow.

from api-cdi.

codemasher avatar codemasher commented on June 2, 2024

A HTTP/20x response as generic is for sure inappropirate. However, the errors should at least indicate if it was a user error or a backend failure. Although my above example might be the result of a bug, the HTTP/400 was clearly wrong and caused me to review and test my code a couple times before i opened this issue because it implied that the error was on my side.

from api-cdi.

sliekens avatar sliekens commented on June 2, 2024

It's not just 2984. Here's the full list.

https://api.guildwars2.com/v2/skins?ids=1042,1043,1047,1193,2329,2385,2388,2393,2394,2395,2984,3046,6074

I would argue that these are not bad parameters -- each and every one of these is listed in the API. Maybe 500 is more appropriate.

from api-cdi.

darthmaim avatar darthmaim commented on June 2, 2024

Really, who cares that much about the response codes. Its an error. The bug is with serializing the skin for the api (or listing it when it shouldn't be listed). This should be fixed. Changing the response code doesn't help anyone. Half of the comments on issues here in this repo or just about response codes, and not about the bug itself.
Changing the response code makes sense when its something that is expected to happen (requires authentication, rate limiting, partial content, ...), this is a bug with the implementation underneath, any error code tells the consumer its not what they requested. If its 400 for requesting a broken entry or a 500 because the api server had some error when processing doesn't matter in this case, once its fixed it is fixed, until then it throws an exception in the client.

/rant over

from api-cdi.

sliekens avatar sliekens commented on June 2, 2024

Lol jeez

from api-cdi.

lye avatar lye commented on June 2, 2024

It's not just 2984. Here's the full list.

I just removed all of those skin IDs from the whitelist -- ErrBadParam usually means the server which reads the .dat file is refusing to serve the content. There's one flag which, looking at it now, might be the cause -- if ShowInWardrobe isn't set the skin is always suppressed. I'll keep an eye on it -- those skins will come back through the whitelist if that hypothesis is correct and I'll be able to fix the issue more correctly.

I should drink some coffee.

from api-cdi.

darthmaim avatar darthmaim commented on June 2, 2024

5898 is also returning ErrBadParam.

from api-cdi.

darthmaim avatar darthmaim commented on June 2, 2024

I'll keep an eye on it -- those skins will come back through the whitelist if that hypothesis is correct and I'll be able to fix the issue more correctly.

2329 is back.

from api-cdi.

freema avatar freema commented on June 2, 2024

Skin id 5898 still return status 400 :(

from api-cdi.

lye avatar lye commented on June 2, 2024

Just re-blacklisted 2329 and 5898. Haven't had time to look into what exactly wrong with these, but given that it came back I really think it's some bad content somewhere.

from api-cdi.

lye avatar lye commented on June 2, 2024

I'm gonna close this one out for now. smh.

from api-cdi.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.