Skip to content

Endpoint-uri prod-only #55

@andumy

Description

@andumy

Hello, exista o serie de endpoints care sunt disponibile doar in productie. In implementarea actuala daca creezi o instanta de stage, te lasa sa dai in ele, dar iti returneaza 404.

Exemplu

Anaf::factory()
    ->staging()
    ->withBaseUri(...)
    ->withApiKey(...)
    ->make()
   ->efactura()
   ->validateXml(...); // O sa returneze mereu 404 pentru ca o sa apeleze `test/FCTEL/rest/validare/{$standard}` desi nu exista endpoint-ul in test

Vad 2 solutii:

  1. Daca instanta e de stage, se arunca o exceptie cu EndpointNotAvailableOnStage sau ceva asemanator. Nu sunt mare fan aici pentru ca nu e SOLID complient
  2. Ce am facut in PR. Endpoint-urile care sunt disponibile doar in prod, seteaza un flag pe Payload care previne str_replace. Asa ca acum chiar daca ai o instanta de stage, poti sa dai in endpointurile respective. In mod normal pare sketchy, dar avand in vedere ca sunt endpoint-uri functionale (xmlToPdf si validate), si ca ANAF oricum nu pare sa fi gandit un sistem independent pentru testare (autentificarea se face tot cu oauth-ul de prod), pare o solutie mai robusta decat ce este acum.

#54

*Nota: M-am rupt din celalalt PR ca sa nu mai apara conflicte la merge dupa. Pt schimbarile punctuale din PR-ul asta vezi aici

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions