将$ FILE数据传递给$ .getJSON

I want to pass the $_FILES array to .getJSON.

Here is my jquery:

$.getJSON(link+'api/images/upload.php',{action:'image.upload',id:id,img:img}, function (response){
                var url = this.url;
                var result = response.message;
                if(response.status == 200){
                    var data = response.data;

                    console.log(data);
                    try_print('Data',data,try_dbg);
                }
                else{
                    alert(response.message);
                }
            });

Here is my api:

switch($_REQUEST['action']){
case 'image.upload':

    $id         = $_REQUEST['id'];
    $img        = $_FILES['img']['name']; //echo $img;
    $temp       = explode(".", $_FILES["img"]["name"]);
    $extension  = end($temp);
    $error      = $_FILES["img"]["error"];

    if(!empty($id)){
        if(!empty($img)){
            if(is_writable($original)){
                if(in_array($extension, $allowedExts)){
                    if($error == 0){

                        $filename = $_FILES["img"]["tmp_name"];
                        list($width, $height) = getimagesize($filename);

                        $a = apiPicture($original, $id, $_FILES["img"]);

                        $return['status']   = 'success';
                        $return['url']      = $original.$_FILES["img"]["name"];
                        $return['width']    = $width;
                        $return['height']   = $height;
                        $return['status']   = 200;
                        $return['message']  = 'Success.';
                    }
                    else{
                        $return['status']   = 400;
                        $return['message']  = 'Error: '.$error;
                    }
        .... the rest of the error codes
    break;
default:
    $return['message']  =   'Unknown Request';
}

Is there a solution for this, can I pass an image through .getJSON?