CNode

express ajax 前后台交互出现问题 ajax无法获取后台数据

问答
Llhist发布于10 年前最后回复10 年前13 回复7171 浏览0 收藏

后台用res.send("DDFDFDF")发送的字符串,前台在ajax({})中的success:function(data)就可以读出DDFDFDF,如果用var files = fs.readFileSync(file.path, 'utf-8');……res。send(files),前台ajax({})success的function (data)读时就读的是空串?

查看回复

回复 (13)

Z
zhuyingda#1·10 年前

试试把files toString呢? res.end试试?

都不行的话,看看files console.log一下,有货吗

N
ncuzp#2·10 年前

你这是想用res.pipe吧?

1
1340641314#3·10 年前

为何不把代码整理好一点

L
lhist#5·10 年前
引用 1340641314为何不把代码整理好一点

@1340641314 function doUpload() {
var formData = new FormData($( "#tijiao" )[0]);
$.ajax({
url: 'http://localhost:1337/' ,
type: 'POST',
data: formData,
async: false,
cache: false,
contentType: false,
processData: false,
success: function (data) {
alert(data); document.getElementById("myDiv").innerHTML = data; },
error: function (returndata) {
alert(returndata + 'aa');
}
}); } 我的前台代码, 后台是 res.send(fileb.toString('utf-8', start=0, end=fileb.length)); 还是传不上

L
lhist#6·10 年前
引用 ncuzp你这是想用res.pipe吧?

@ncuzp 就是想用nodejs返回读取的文本文件到前台,现在返回不来

Z
zhuyingda#7·10 年前

如果在前台浏览器里直接访问这个接口呢? 浏览器里得到的也是空串吗

R
Richole#9·10 年前

@lhist 试试request包 流传递,而且你的同步io不太好啊

来自酷炫的 CNodeMD

Q
qq610540622#11·10 年前

你看看后台代码是不是异步的原因。我猜测可能是先send了,然后再去读取文件了。

D
DevinXian#12·10 年前

这种东西不用res.pipe实在是不舒服

L
lhist#13·10 年前
引用 DevinXian这种东西不用res.pipe实在是不舒服

@DevinXian 这个要怎样用pipe啊,要想前台发送字符串

参与回复
登录后即可参与回复。登录