Skip to content

Expose result header information. #23

@AndreasPK

Description

@AndreasPK

It seems currently the API doesn't expose the headers returned from esi.

For simple requests this doesn't matter, but when querying paged results with many pages (like orders in jita) it's necessary to inspect header data to get consistent data.

The reason for this is that when requesting pages 1-100+ with one request per page, different requests can return data from different snapshots when done near expiry time.

To my knowledge this is best avoided by one of these:

  • Check that responses for all pages have the same last changed time.
  • Fire of one request and use the header info to time the query such that it's "guaranteed" to not overlap the data expiration time.
  • All of the above.

Either way one needs to inspect the header data to avoid the problem of different pages representing different snapshots.

The easiest way would probably be to have *_response methods like get_op_response that returns the response object instead of just the esi data. But I understand if that's beyond the complexity you want to take this package to.

For reference I currently use esipy for this, but it using pyswagger, and pyswagger being broken with python 3.10+ I'm looking for alternatives.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions