Problem z JSON przy własnym serwerze do ShareX

Zombie
Timo
Timo Moderator forum.lvlup.pro

Cześć.

Zaznaczam, iż poniżej podesłana abstrakcja (zwana również nieudolnym kodem do php) jest moją pierwszą tego typu.

Chciałbym zasięgnąć informacji co mogę zmienić, oraz jak zrobić, żeby przede wszystkim działało.

Posklejałem wiele poradników i wyprodukowałem to: Plik up.php -> https://hastebin.com/jabagazofu.xml Plik k.php -> https://hastebin.com/nubivaditu.xml

Myślę, że po kodzie zauważycie, co próbuję zrobić. Jeśli nie - serwer zrzutów ekranu przez dużo szybsze niż SFTP php, z kilkoma kluczami i limitem dysku per klucz.

Prawie działa.

Tutaj błąd:

Error: Response parse failed. Newtonsoft.Json.JsonReaderException: Unexpected character encountered while parsing value: U. Path '', line 0, position 0. w Newtonsoft.Json.JsonTextReader.ParseValue() w Newtonsoft.Json.Linq.JToken.ReadFrom(JsonReader reader, JsonLoadSettings settings) w Newtonsoft.Json.Linq.JToken.Parse(String json, JsonLoadSettings settings) w ShareX.HelpersLib.Helpers.ParseJSON(String text, String jsonPath) w ShareX.UploadersLib.CustomUploaderItem.ParseSyntax(String syntax, Boolean output) w ShareX.UploadersLib.CustomUploaderItem.ParseURL(String url, Boolean output) w ShareX.UploadersLib.CustomUploaderItem.ParseResponse(UploadResult result, Boolean isShortenedURL) w ShareX.UploadersLib.ImageUploaders.CustomImageUploader.Upload(Stream stream, String fileName)

Proszę specjalistów php o pomoc :slight_smile:

Dzięki!

Nieznajomy11
Nieznajomy11 Moderator forum.lvlup.pro

Co dokładnie zwraca ten url? Coś nie tak z odpowiedzią, którą generujesz.

Timo
Timo Moderator forum.lvlup.pro

Chyba chodzi ci o to: "URL": "$json:data.link$"

kamil2321
kamil2321

A w jakim momencie Ci wywala błąd? Bo ja sobie wgrałem na swojego VPSa ale no hm https://kamil2321.pl/up.php Nie za bardzo znam się aż tak na php ale co do key'ów to jaki key potrzebny? Może i to brzmi głupio xD A więc powiedz mi proszę co i gdzie i jaki klucz(albo zapodaj jakiś) by sprawdzić działanie skryptu. Ja bym obstawiał na konfigurację serwera ale żebym mógł być pewny to musi najpierw u mnie to zadziałać xd

Nieznajomy11
Nieznajomy11 Moderator forum.lvlup.pro

A co ma konfiguracja serwera do poprawności generowanej odpowiedzi JSON?

Timo:

"URL": "$json:data.link$"

Jeśli to jest faktycznie to co zwraca strona, to nie jest to poprawne. Nie do końca rozumiem wartość, ale nie używałem sharexa. W każdym razie to powinno wyglądać raczej tak:

{"URL": "$json:data.link$"}
kamil2321
kamil2321

Ok ja się pobawiłem nieco no i prośba, zapodaj mi tutaj konfigurację w ShareX. Bo jeśli używasz metody POST to wiele wyjaśnia Twój błąd ;) Ja sobie zabrałem pierwszy lepszy skrypt z ustawieniami jak na screenie: undefined I tu używana jest metoda post bo w pliku konfiguracyjnym jest:

if (isset($_POST['k'])) {
if ($_POST['k'] != $key) {
    echo ('Error Key wrong.');
    die();
 }
}
if (isset($_POST['k'])) {
if ($_POST['k'] == $key) {
    header("Content-Type: application/json");

A tak poza tym to fajne narzędzie xd

Timo
Timo Moderator forum.lvlup.pro

Błąd wyrzuca podczas próby uploadowania zdjęcia na ten serwer z właściwym kluczem. JVkGKLN8tZNVh86pTtpfAJpg Proszę bardzo, jeden z kluczy. Plik konfiguracyjny do zaimportowania w Sharex to https://tpim.ga/setup.json Tam jest ten wers, który podesłałem.

Fenek912
Fenek912

Po długiej wymianie zdań na PM dokonaliśmy dużych zmian w kodzie, co poskutkowało naprawieniem skryptu.

Timo
Timo Moderator forum.lvlup.pro

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.