我的休息电话是两次触发,我正在使用angularjs

时间:2017-05-22 14:49:06

标签: jquery angularjs web-services

当我从ui调用它时,我的休息调用会触发两次..我正在使用java v8和angularjs v1.6这里是服务

import com.project123.temp.component.ImportFileComponent;

@Component
@Path("project123/ImportFileService")
@JsonIgnoreProperties(ignoreUnknown = true)

public class ImportFileService {

    @Autowired
    private ImportFileComponent ImportFileComponent;


    @Path("/invoiceImportService")
    @POST
    @Consumes({ MediaType.APPLICATION_JSON })
    @Produces({ MediaType.APPLICATION_JSON })
    @Transactional
    public Response validateImportFile(File filename){
                ImportFileComponent.validateImportFile(filename);
        return null; 

    }
}

这是我的控制器函数inangularJS

$("#importInvoice").on('change', prepareUpload);
    function prepareUpload(event){
        files = event.target.files;
        console.log(files[0]);
        $http({
            method : 'POST',
            url : 'project123/ImportFileService/invoiceImportService',
            data : files[0] 
        }).then(function success(response){
            console.log(response);
        }, function error(response){
            console.log(response);
        });
    }

任何人都可以帮助理解我为什么吗?如果您需要更多数据,我可以提供。

1 个答案:

答案 0 :(得分:0)

$("#importInvoice").on('change', prepareUpload);

而不是这段代码...我用

替换
$("#importInvoice").off('change').on('change', prepareUpload);

现在它的工作非常好......没有其他任何改变。它似乎是jquery。