Forum > Networking and Web Programming
Need help json and tmdb
(1/1)
HengeDK:
Need help
I can't figure out why this dosen't work and I get access violation at this line
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---WriteLn('Title: ', Results.Items[i].FindPath('original_name').AsString);
see attachment for json output from tmdb
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---function TFileScanner.SearchMovies(query: string): TJSONArray;var HTTPClient: TFPHTTPClient; Response: string; JSONData: TJSONData; Results: TJSONArray;begin HTTPClient := TFPHTTPClient.Create(nil); try Response := HTTPClient.Get('https://api.themoviedb.org/3/search/tv?api_key=xxxxxxx&query=' + EncodeUrl(query)); finally HTTPClient.Free; end; JSONData := GetJSON(Response); try Results := JSONData.FindPath('results') as TJSONArray; finally JSONData.Free; end; //Result := Results; WriteLn(Results.ToString);end;
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} --- try for i := 0 to Results.Count - 1 do begin WriteLn('Title: ', Results.Items[i].FindPath('original_name').AsString); WriteLn('ID: ', Results.Items[i].FindPath('id').AsString); WriteLn('Overview: ', Results.Items[i].FindPath('overview').AsString); WriteLn; end; finally Results.Free; end;
avk:
In the FpJson implementation, a JSON document is a rooted tree, where each element is responsible for freeing the memory occupied by its children.
Respectively, by calling Free() for the root element (JSONData.Free, line 20) you thus destroy the entire document, including the Results element.
HengeDK:
Thanks :)
Navigation
[0] Message Index