private Boolean verifyOssCallback()

in solution/solution-oss-pre-signed/code-example/java/spring-boot/src/main/java/org/example/service/UploadService.java [171:195]


    private Boolean verifyOssCallback(String callbackBody, HttpServletRequest request)
        throws UnsupportedEncodingException {
        String autorizationInput = request.getHeader("Authorization");
        String pubKeyInput = request.getHeader("x-oss-pub-key-url");
        byte[] authorization = BinaryUtil.fromBase64String(autorizationInput);
        byte[] pubKey = BinaryUtil.fromBase64String(pubKeyInput);
        String pubKeyAddr = new String(pubKey);
        if (!pubKeyAddr.startsWith("http://gosspublic.alicdn.com/")
            && !pubKeyAddr.startsWith("https://gosspublic.alicdn.com/")) {
            System.out.println("Pub key addr must be oss addrss.");
            return false;
        }
        String retString = executeGet(pubKeyAddr);
        retString = retString.replace("-----BEGIN PUBLIC KEY-----", "");
        retString = retString.replace("-----END PUBLIC KEY-----", "");
        String queryString = request.getQueryString();
        String uri = request.getRequestURI();
        String decodeUri = java.net.URLDecoder.decode(uri, "UTF-8");
        String authStr = decodeUri;
        if (queryString != null && !queryString.equals("")) {
            authStr += "?" + queryString;
        }
        authStr += "\n" + callbackBody;
        return doCheck(authStr, authorization, retString);
    }