我已经用正确的键和值在邮递员上测试了我的endpoint,它工作得很好。 但是,当我尝试在浏览器上发出POST请求时--我得到一个500
错误。
console.log(id);
和console.log(email);
都在打印正确的值,因此我可以排除这不是问题所在。 我还尝试使用axios
来发出POST请求,但它一直给我带来问题,所以我恢复到fetch
。 我愿意接受任何关于改进代码的建议:)。
如何使我的post请求在浏览器上成功通过? 我可能忽略了什么
前端代码:
fileUpload(file) {
const formData = new FormData()
let id = Cookies.get("id");
let email = Cookies.get("email");
console.log(id);
console.log(email);
formData.append('file', file);
this.setState({
id: id,
email: email,
formData: formData
});
let data = {
"id": this.state.id,
"email" : this.state.email,
"formData": this.state.fData
}
fetch('http://myendpoint/api/auth/wall-of-fame', {
method: 'POST',
body: data
})
.then(response => console.log(response))
.catch(error => { console.error(error) });
}
后端代码:
public function store(Request $request){
$filePath = $request->file('file')->getClientOriginalName();
$id = Auth::user()->id;
$email = Auth::user()->email;
$data= [
'file_path' => $filePath,
'user_id' => $id,
'email' => $email
];
DB::table('my db')->insert($data);
echo "Record inserted successfully.<br/>";
}
在前端使用@wk24应答,在后端代码中使用AUTH来获取用户id,而不是$request,我认为您应该使用
$request->id;
$email=$request->email;
希望这样可以解决您的问题
当您使用表单数据上载文件时,最好向表单数据本身添加其他属性,如下所示,而不是创建数组
formData.append('file', file)
formData.set('id', id)
formData.set('email', email)
此外,在请求中,您可以将formData作为主体发送
fetch('http://myendpoint/api/auth/wall-of-fame', {
method: 'POST',
body: formData
})
这应该能解决你的问题。 让我知道
这是我的密码-------- 当我尝试对.post(/register…)路由进行邮递员测试时,它会暂停加载几分钟,然后给出错误-- “无法得到任何响应 连接到 http://localhost:5000/api/users/register 时出错。为什么会发生这种情况: 服务器无法发送响应:确保后端正常工作 自签名 SSL 证书被阻止:通过在“设置”中关闭“SSL 证书验证”来解决此问题 请求
问题内容: Django文档说 在不支持SELECT … FOR UPDATE的后端(例如SQLite)上使用select_for_update()将无效。SELECT … FOR UPDATE将不会添加到查询中,并且如果在自动提交模式下使用select_for_update(),则会引发错误。 这让我震惊,这是一个奇怪且潜在危险的决定,尤其是因为它用于锁定行时。如果我编写使用的代码,那么我将依靠
嗨,我有一个spring webflux应用程序。我想要一个API上传一个文件。我使用MultipartFile遵循Spring Webflux 415中的指令 写了这样的东西 但我仍然无法测试这一点,它失败了与以下错误在邮递员和swagger doesnt生成文件浏览按钮为这个API。
我在Postman中添加了用户名和密码作为基本身份验证 那么,如果我输入了一些错误的用户名/密码或为空,为什么我没有得到401身份验证错误呢?
我创建了一个简单的GUI,其中包括一个JTable。这张桌子可能被保存了 此时,保存函数按预期工作,当在保存目录中查找时,我可以看到表对象存储在文件中。 但是,当我尝试从文件加载表时,GUI从不显示加载的表。调用actionlistener函数,因为我有一个系统。输出“数据已加载”,但表格从不显示更新的数据。 我已尝试调用repaint(),但无效。如果有人能让我知道我可能做错了什么,我将不胜感激
问题内容: 新手有问题,请保持温柔: 结果是: 我不明白为什么列表改变时,我只是在做,没有。我什至不知道要用什么搜索词来弄清楚。 问题答案: 这是因为在进行分配后,和都引用相同的列表。 尝试执行以下操作以查看它们是指相同的对象还是不同的对象: 一个例子: 如果您确实要创建这样的重复副本,而不是引用原始列表,而是引用列表的副本,请使用slice运算符: 一个例子: 另外,请勿将其用作变量名,因为最初
这几天我在研究Android游戏开发。我遇到一个关于SurfaceView\SurfaceHolder的问题。当我读到android SDK22中View/SurfaceView.java的源代码时,我感到很困惑。代码如下: 我知道,mSurfaceHolder.getSurface()\LockCanvas非常重要,但是它返回NULL!所以,我认为这个mSurfaceHolder可能会被处理一些
问题内容: 我一定会丢失一些东西,但是我已经看了几天了,但是到底为什么您会使用log4j2而不是log4j(而不是性能)? 从目前为止我所看到的,log4j2被宣传为更易于配置,但实际上却要复杂得多(现在已经三天了,我仍然无法在我的主目录中写日志)。自动配置对我根本不起作用(或者至少我无法使其工作),配置文件本身的结构实质上更复杂,在运行时添加东西以帮助诊断似乎更加困难。 因此,除了性能之外,还有