【问题标题】:Google Remote API 404 on SpringbootSpring Boot 上的谷歌远程 API 404
【发布时间】:2017-12-05 12:17:35
【问题描述】:

当部署到我的 Google DataStore 时,我正在尝试连接在本地/不在 Google 应用引擎中运行的 Spring Boot 应用。我正在使用 Objectify 和 Google Remote API,因为我的理解是 Objectify 仅在部署在 App 引擎(?)中才能工作。问题是当我尝试与 DataStore 通信时,Google Remote API 抛出 404。我想我可能在 Spring Boot 中的配置有误,因为 google docs 上的说明谈到在 web.xml 中设置配置,我不在基于 JAR 的 Spring Boot 应用程序上使用它。我创建了一个 SpringBootServletInitializer 类来尝试注册 servlet(代码在底部)。我是从 AWS 的角度来看的,到目前为止,我发现 Google 云是一场噩梦!连接到 DynamoDB 简单多了,我觉得我一定是遗漏了什么!

import com.google.apphosting.utils.remoteapi.RemoteApiServlet;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.boot.web.support.SpringBootServletInitializer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;

/**
 * Created by Thomas on 01/07/2017.
 */
@Configuration
public class GoogleRemoteApiConfig extends SpringBootServletInitializer {

    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(GoogleRemoteApiConfig.class, "/remote_api");
    }

    @Bean
    public ServletRegistrationBean remoteApiRegistration() {
        ServletRegistrationBean registration = new ServletRegistrationBean(new RemoteApiServlet(), "/remote_api");
        Map<String,String> params = new HashMap<String,String>();
        registration.setInitParameters(params);
        registration.setLoadOnStartup(1);
        registration.setUrlMappings(Arrays.asList("/remote_api"));
        registration.setName("RemoteApiServlet");
        return registration;
    }

}

【问题讨论】:

标签: spring google-app-engine spring-boot google-cloud-datastore objectify


【解决方案1】:

我从根本上误解了 remote-api 的工作原理,并且没有意识到我需要一个在应用引擎中运行的应用来将请求代理到 Google DataStore。我仍然感到困惑,没有简单的方法可以从 Java 访问 DataStore,但这种方法至少有效!

【讨论】:

    猜你喜欢
    • 2019-02-18
    • 2021-12-03
    • 2020-05-03
    • 2020-08-02
    • 2020-08-04
    • 2018-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多