从 fastapi 官方的示例代码修改,现在想删除一条数据,总是返回 403 求教是什么原因?
后端:
@router.delete("/{user_id}", response_model=schemas.User)
def delete_user(
user_id: int,
*,
db: Session = Depends(deps.get_db),
user_in: schemas.UserDelete,
current_user: models.adminUser = Depends(deps.get_current_active_superuser),
) -> Any:
user = crud.user.remove(db, user_id=user_id)
if user is None:
raise HTTPException(
status_code=404,
detail="User not found",
)
return user
# remove 方法
def remove(
self, db: Session, user_id: int
) -> adminUser:
db_user = db.query(adminUser).filter(adminUser.id == user_id).first()
if db_user:
db.delete(db_user)
db.commit()
db.flush()
return db_user
前端:
async actionDeleteUser(context: MainContext, payload: IUserDelete) {
try {
const loadingNotification = { content: 'delete', showProgress: true };
commitAddNotification(context, loadingNotification);
const response = (await Promise.all([
api.deleteUser(context.rootState.main.token, payload.id),
await new Promise((resolve, reject) => setTimeout(() => resolve(), 500)),
]))[0];
} catch (error) {
await dispatchCheckApiError(context, error);
}
},
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.