在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java/ springmvc匹配不到ajax發(fā)送的url怎么回事?

springmvc匹配不到ajax發(fā)送的url怎么回事?

clipboard.png
clipboard.png

clipboard.png

clipboard.png

clipboard.png

clipboard.png

配置文件絕對沒有問題,頁面代碼已經(jīng)看了好多遍了沒發(fā)現(xiàn)問題.找不到原因.工具用的idea

回答
編輯回答
懷中人
  1. 其他controller的請求是否可以正常發(fā)起。
  2. 是否因為沒有指定method為post
2017年11月20日 00:20
編輯回答
神經(jīng)質(zhì)

ajax中url前面加上項目的根路徑,應(yīng)該是路勁不對導(dǎo)致的

2017年7月9日 16:31
編輯回答
野橘

Controller的RequestMapping默認(rèn)是GET請求. 你前端的請求是POST. 改成GET試試看.

2017年9月9日 00:58
編輯回答
舊螢火

你把你的代碼貼完整一點(diǎn),我寫過一個ajax上傳文件的代碼,希望你能找到原因
前端代碼:

<form id="csvForm" enctype="multipart/form-data">
    <input id="accountName" name="accountName" value="${accountName}" hidden>
    <input type="button" value="導(dǎo)入" id="external_button"/>
    <input type="file" name="file" id="file"/>
</form>
//JS代碼

/**
 * 上傳按鈕綁定事件
 */
$('#external_button').click(function () {
    if ($('#file').val() == "") {
        alertMessage("請先選擇文件");
        return false;
    }
    var csvPath = $('#file').val();
    var fileExtendOff = csvPath.substring(csvPath.lastIndexOf('.')).toLowerCase();
    if (fileExtendOff != '.csv') {
        alertMessage("文件格式有誤,請上傳csv格式");
        return false;
    }
    doUpload();
    return false;
});

/**
 * 異步上傳
 */
function doUpload() {
    var formData = new FormData($("#csvForm")[0]);
    $.ajax({
        url: contextPath + '/security/importExtReconFile.htm' ,
        type: 'POST',
        data: formData,
        async: false,
        cache: false,
        contentType: false,
        processData: false,
        success: function (data) {
            if (data.code == '200') {
               alertMessage(data.content);
               window.location.reload();
            } else {
               alertMessage(data.content);
                
            }
        }
    });
}

后臺代碼:

@ResponseBody
@RequestMapping(method = RequestMethod.POST, value = "/security/importExtReconFile")
public MessageBean importExtReconFile(@RequestParam("file") MultipartFile file,
        HttpServletRequest request) throws IOException {
    MessageBean messBean = new MessageBean(MessageCode.COMMON_SUCCESS);
    //獲取頁面參數(shù)
    String accountName = request.getParameter("accountName");
    //獲取文件名
    String filename = file.getOriginalFilename();
    AccountPeriodPo accountPeriodPo = new AccountPeriodPo();
    InputStream fis = null;
    try {
        //獲取上傳文件的輸入流
        fis = file.getInputStream();
        //1.檢查對賬文件數(shù)據(jù)的格式CSV
        MessageBean result = checkCSVFile(fis);
        if (!MessageCode.COMMON_SUCCESS.equals(result.getCode())) {
            logger.error("csv數(shù)據(jù)格式不正確");
            messBean.setCode(MessageCode.SYSTEM_ERROR);
            messBean.setContent(result.getContent());
            return messBean;
        }
        //2.存儲到指定位置
        //省略業(yè)務(wù)邏輯...
    } catch (IOException e) {
        logger.error("文件導(dǎo)入失敗", e);
        messBean.setCode(MessageCode.SYSTEM_ERROR);
        messBean.setContent("文件導(dǎo)入失敗");
        return messBean;
    } finally {
        if (fis != null) {
            try {
                fis.close();
            } catch (IOException e) {
                logger.error("流關(guān)閉異常", e);
            }
        }
    }
    messBean.setContent("導(dǎo)入成功 !");
    return messBean;
}
2018年8月22日 01:39
編輯回答
傻叼

知道答案了,原來不是找不到方法,而是接受不到參數(shù).在方法的參數(shù)中使用MultipartFile[]接受圖片,但是還必須要加上@RequestParam(required = false)注解,注解的參數(shù)表示這個參數(shù)可以為空.如果不使用這個注解就會出現(xiàn)我這個問題...

2017年3月7日 12:20