To znowu ja, wasz upierdliwy amator.
Dość długo nic nie pisałem, nadszedł jednak ten .... dzień że muszę zapytać. Kopałem trochę po sieci ale nie bardzo wykopałem co chciałem.
potrzebuję zrobić coś po stronie klienta w js i z czym nie do końca mogę sobie poradzić za to po stronie servera poradziłem sobie bez problemu.
// funkcja w php private function getImgproxy($link,$width,$height,$pafka){ // key & salt $key = 'mój klucz kodowania'; $salt = 'mój salt'; // key compression } // key compression } $resize = 'fit'; $gravity = 'no'; $enlarge = 0; $extension = 'png'; $url = $link; // processing $path = sprintf("/%s/%d/%d/%s/%d/%s.%s", $resize, $width, $height, $gravity, $enlarge, $encodedUrl, $extension); $signature = rtrim(strtr(base64_encode(hash_hmac('sha256', $saltBin.$path, $keyBin, true)), '+/', '-_'), '='); $go = $signature.$path; }
teraz chciałem to samo zrobić po stronie klienta w związku z czym zrobiłem:
function imgProxy (data) { var key = 'mój klucz kodowania'; var salt = 'mój salt'; var vpsLink = encodedString('https://imgprocessor.com/'); // nie wiem jak się zabrać za to poniżej ... var keyBin = ... pack("H*" , klucz);... if(!!keyBin) {console.log('Key expected to be hex-encoded string');} var saltBin = ... pack("H*" , salt);... if(!!saltBin) {console.log('Salt expected to be hex-encoded string');} for (i = 0; i < data.response.product_data.length; i++) { var resize = 'fit'; var gravity = 'no'; var enlarge = 0; var extension = 'png'; var url = $link; var product = data.response.product_data[i]; product['image'] = null; console.log(product['image']); // i tu będzie reszta czyli zbudowany url - też jeszcze nie wiem do końca ale pracuję nad tym - gdyby ktoś mi podpowiedział jak dokonać "pack'a" ? } }