Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在AWS API网关中读取用Java 8编写的自定义授权器中的请求头_Java_Amazon Web Services_Aws Api Gateway - Fatal编程技术网

如何在AWS API网关中读取用Java 8编写的自定义授权器中的请求头

如何在AWS API网关中读取用Java 8编写的自定义授权器中的请求头,java,amazon-web-services,aws-api-gateway,Java,Amazon Web Services,Aws Api Gateway,我正在尝试使用Java8在AWSAPI网关中创建基于令牌的自定义授权器。但不确定如何读取请求头中哪个客户端将发送的令牌。 在下面的代码中,可以将带有的令牌POJO类映射到请求主体。但是我需要从请求头读取令牌 public AccessPolicy handleRequest (Token t, Context context) { System.out.println("Token : "+t.getToken()); context.getLogger().l

我正在尝试使用Java8在AWSAPI网关中创建基于令牌的自定义授权器。但不确定如何读取请求头中哪个客户端将发送的令牌。 在下面的代码中,可以将带有的令牌POJO类映射到请求主体。但是我需要从请求头读取令牌

public AccessPolicy handleRequest (Token t, Context context) {

        System.out.println("Token : "+t.getToken());
        context.getLogger().log("Token : "+t.getToken());
        context.
        if(t.getToken()!=null) {
            AccessPolicy policy = new AccessPolicy();

            Statement statement = new Statement();
            statement.setEffect(t.getToken());

            List<String> action = new ArrayList<String>();
            action.add("execute-api:Invoke");
            statement.setAction(action);

            List<String> resource = new ArrayList<String>();
            resource.add("*");
            statement.setResource(resource);

            policy.setVersion("2012-10-17");
            policy.setStatement(statement);

            return policy;
        }
        return null;
}

public class AccessPolicy {

    private String Version;
    private Statement Statement;
    public String getVersion() {
        return Version;
    }
    public void setVersion(String version) {
        this.Version = version;
    }
    public Statement getStatement() {
        return Statement;
    }
    public void setStatement(Statement statement) {
        this.Statement = statement;
    }
}
public AccessPolicy handleRequest(令牌t,上下文){
System.out.println(“标记:+t.getToken());
context.getLogger().log(“标记:+t.getToken());
上下文
if(t.getToken()!=null){
AccessPolicy policy=新的AccessPolicy();
语句=新语句();
statement.setEffect(t.getToken());
列表操作=新建ArrayList();
添加(“执行api:Invoke”);
声明.行动(行动);
列表资源=新的ArrayList();
资源。添加(“*”);
语句.setResource(resource);
政策设定版本(“2012-10-17”);
政策声明(声明);
退货政策;
}
返回null;
}
公共类访问策略{
私有字符串版本;
私人声明;
公共字符串getVersion(){
返回版本;
}
公共void setVersion(字符串版本){
这个。版本=版本;
}
公共声明getStatement(){
返回语句;
}
公开无效声明(声明){
这个.语句=语句;
}
}