oatpp / example-crud

A complete example of a "CRUD" service (UserService) built with Oat++.
https://oatpp.io/
Apache License 2.0
98 stars 61 forks source link

TypeError: Failed to fetch in Swagger #28

Open theTJCloudWalker opened 1 year ago

theTJCloudWalker commented 1 year ago

I ran this project successfully but met TypeError when I test api, I am using a macbook air m1, no code is modified, so I was confused

theTJCloudWalker commented 1 year ago

plus, response is fine when I use curl in cmd

joygo commented 9 months ago

I found a way to sovle this problem https://github.com/oatpp/oatpp/blob/master/changelog/1.2.5.md#enable-global-cors enable cors for this example

OATPP_CREATE_COMPONENT(std::shared_ptr<oatpp::network::ConnectionHandler>, serverConnectionHandler)([] {

    OATPP_COMPONENT(std::shared_ptr<oatpp::web::server::HttpRouter>, router); // get Router component
    OATPP_COMPONENT(std::shared_ptr<oatpp::data::mapping::ObjectMapper>, objectMapper); // get ObjectMapper component

    auto connectionHandler = oatpp::web::server::HttpConnectionHandler::createShared(router);
    connectionHandler->setErrorHandler(std::make_shared<ErrorHandler>(objectMapper));

    /* Add CORS-enabling interceptors */
    connectionHandler->addRequestInterceptor(std::make_shared<oatpp::web::server::interceptor::AllowOptionsGlobal>());
    connectionHandler->addResponseInterceptor(std::make_shared<oatpp::web::server::interceptor::AllowCorsGlobal>());

    return connectionHandler;

  }());