base64_decode - czy jest błąd

0

Witam,

Na stronie:
https://docs.apigee.com/api-platform/security/oauth/oauth-20-client-credentials-grant-type

Jest napisane:

Although you can pass the client_id and client_secret values as query parameters as shown above, it's a good practice to pass them as a base64 URL encoded string in the Authorization header. To do this, you need to use a base64 encoding tool or utility to encode the two values together with colon separating them. Like this: aBase64EncodeFunction(clientidvalue:clientsecret). So, the example above would be encoded like this:

result = aBase64EncodeFunction(ns4fQc14Zg4hKFCNaSzArVuwszX95X:ZIjFyTsNgQNyxI) // Note the colon separating the two values.

The result of base64 encoding the above string is: bnM0ZlFjMTRaZzRoS0ZDTmFTekFyVnV3c3pYOTVYOlpJakZ5VHNOZ1FOeXhJOg==

Mi natomiast wychodzi:
bnM0ZlFjMTRaZzRoS0ZDTmFTekFyVnV3c3pYOTVYOlpJakZ5VHNOZ1FOeXhJ

Czy na stronie jest błąd?

W drugą stronę dekodując zapis ze strony pojawia się dodatkowo :

Czy czegoś nie wiem?

Pozdrawiam

1

Brak paddingu?

0

Ogarnąłem, można wrzucić temat do śmieci?

2

W przykładzie jest literówka ;)

import java.nio.charset.StandardCharsets;
import java.util.Base64;

public class Main {
    public static void main(String[] args) {
        String textToEncode = "ns4fQc14Zg4hKFCNaSzArVuwszX95X:ZIjFyTsNgQNyxI:";
        String result = Base64.getEncoder().encodeToString(textToEncode.getBytes(StandardCharsets.UTF_8));
        System.out.println(result);
    }
}

screenshot-20210826201842.png

Oni kodują frazę: ns4fQc14Zg4hKFCNaSzArVuwszX95X:ZIjFyTsNgQNyxI: a nie ns4fQc14Zg4hKFCNaSzArVuwszX95X:ZIjFyTsNgQNyxI

Na końcu jest dodatkowo dwukropek: :

PS Wiem, że to herezja wrzucać kod z Javy w dziale .Not'a 😱...ale nie banujcie 😉

0

Właśnie dlatego nie wiedziałem czemu serwer wywala mi błąd autoryzacji. Czy problem jest w moim kodowaniu do base64? Skoro daje mi inny wynik niż w przykładzie. Natomiast problem leżał w innym miejscu ;-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1