调用php脚本,访问其输出并在函数

时间:2016-01-21 21:31:00

标签: javascript json post

我正在访问第三方API,该API使用函数getResults()返回包含图片网址的JSON数据。在该函数中,我调用另一个函数uploadResults()来调用PHP脚本来发布这些图像URL并接收新的(品牌)URL。然后我想将这些新网址保存在名为newURL的变量中。最后,我想显示此newURL以及我从第三方API收集的其他JSON数据。

我的JavaScript代码:

function getResults(url){
    $.get("https:// MY API URL=" + url, function(data) {
        console.log("API call worked")
        console.log(data);

        data['result'].forEach(function(result,index,results) {
            var file = result.value_map.im_url;
            uploadResults(file);

            var itemName = result.value_map.title;
            var clickURL = result.value_map.web_url;    
            var image = "<img src=\"" + newURL + "\"/>";
            var clickableImage = "<a href=\"" + clickURL + "\">" + image + "</a>";
            var wholeImage = "<div>" + clickableImage + "<br><br>" + itemName + "<br><br><br><br></div>";
            $(".display").append(wholeImage);
        });
    });
}

function uploadResults(file){
    $.ajax({
        method: 'POST',
        url: 'http://MY HOST/upload.php?' + file,
        cache: false,
        success: function(files){
            console.log("PHP call worked");
            console.log(files);
            var newUrl = files;
        }
    });
}

当我在浏览器中运行我的代码时,我在控制台中得到了这个输出:

API call worked
Object {status: "OK", method: "uploadsearch", error: Array[0], page: 1, limit: 50…}
Uncaught ReferenceError: newURL is not defined(anonymous function) 
PHP call worked
Object {files: Array[0]}

我没有正确调用PHP脚本吗?我没有传递正确的参数吗?

0 个答案:

没有答案