本文整理汇总了Golang中github.com/bbhmakerlab/openinnovation/response.ClientError函数的典型用法代码示例。如果您正苦于以下问题:Golang ClientError函数的具体用法?Golang ClientError怎么用?Golang ClientError使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ClientError函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: GetUser
func GetUser(w http.ResponseWriter, r *http.Request) {
userIDStr := r.FormValue("userID")
if userIDStr == "me" {
response.OK(w, store.CurrentUser(r))
return
}
var parser store.Parser
userID := parser.Int(userIDStr)
if parser.Err != nil {
response.ClientError(w, http.StatusBadRequest)
return
}
user := context.Get(r, "user").(store.User)
otherUser, err := store.GetUserWithParams(userID, store.GetUserParams{user.ID()})
if err != nil {
response.ServerError(w, err)
return
}
if otherUser == nil {
response.ClientError(w, http.StatusNotFound)
return
}
response.OK(w, otherUser)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:29,代码来源:user.go
示例2: RemoveMember
func RemoveMember(w http.ResponseWriter, r *http.Request) {
var parser store.Parser
projectID := parser.Int(r.FormValue("projectID"))
userID := parser.Int(r.FormValue("userID"))
if parser.Err != nil {
response.ClientError(w, http.StatusBadRequest)
return
}
user := context.Get(r, "user").(store.User)
if user.ID() != userID {
response.ClientError(w, http.StatusForbidden)
return
}
if exists, err := store.MemberExists(projectID, userID); err != nil {
response.ServerError(w, err)
return
} else if !exists {
response.OK(w, nil)
return
}
if err := store.RemoveMember(projectID, userID); err != nil {
response.ServerError(w, err)
return
}
response.OK(w, nil)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:31,代码来源:member.go
示例3: UpdateMilestone
func UpdateMilestone(w http.ResponseWriter, r *http.Request) {
var parser store.Parser
projectID := parser.Int(r.FormValue("projectID"))
milestoneID := parser.Int(r.FormValue("milestoneID"))
date := parser.Time(r.FormValue("date"))
if parser.Err != nil {
response.ClientError(w, http.StatusBadRequest)
return
}
user := context.Get(r, "user").(store.User)
if !user.IsAuthor(projectID) {
response.ClientError(w, http.StatusForbidden)
return
}
title := r.FormValue("title")
description := r.FormValue("description")
if err := store.UpdateMilestone(store.UpdateMilestoneParams{
MilestoneID: milestoneID,
Title: title,
Description: description,
Date: date,
}); err != nil {
response.ServerError(w, err)
return
}
response.OK(w, nil)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:32,代码来源:milestone.go
示例4: adminProject
//
// /api/admin/project
//
// POST: create a new project
// PUT: update an existing project
// GET: get a project's information
//
func adminProject(w http.ResponseWriter, r *http.Request) {
switch r.Method {
case "POST":
switch r.FormValue("type") {
case "setFeaturedProject":
SetFeaturedProject(w, r)
case "unsetFeaturedProject":
UnsetFeaturedProject(w, r)
default:
response.ClientError(w, http.StatusBadRequest)
}
default:
response.ClientError(w, http.StatusMethodNotAllowed)
}
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:22,代码来源:api_admin.go
示例5: PostChat
func PostChat(w http.ResponseWriter, r *http.Request) {
var parser store.Parser
userID := parser.Int(r.FormValue("userID"))
channelID := parser.Int(r.FormValue("channelID"))
if parser.Err != nil {
response.ClientError(w, http.StatusBadRequest)
return
}
chatParams := store.PostChatParams{
UserID: userID,
ChannelID: channelID,
ChannelType: r.FormValue("channelType"),
Text: r.FormValue("text"),
}
id, err := store.PostChat(chatParams)
if err != nil {
response.ServerError(w, err)
return
}
if err = store.NotifyChat(store.NotifyChatParams{id, chatParams}); err != nil {
debug.Warn(err)
return
}
response.OK(w, id)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:30,代码来源:chat.go
示例6: task
//
// /task
//
func task(w http.ResponseWriter, r *http.Request) {
switch r.Method {
case "GET":
switch r.FormValue("type") {
case "project":
GetTasks(w, r)
case "latest":
LatestTasks(w, r)
case "personalized":
PersonalizedTasks(w, r)
default:
GetTask(w, r)
}
case "POST":
CreateTask(w, r)
case "PUT":
switch r.FormValue("type") {
case "toggleStatus":
ToggleTaskStatus(w, r)
default:
UpdateTask(w, r)
}
case "DELETE":
DeleteTask(w, r)
default:
response.ClientError(w, http.StatusMethodNotAllowed)
}
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:31,代码来源:api.go
示例7: SetFeaturedProject
func SetFeaturedProject(w http.ResponseWriter, r *http.Request) {
var parser store.Parser
const existSQL = `
SELECT COUNT(*) FROM featured_project
WHERE project_id = $1`
projectID := parser.Int(r.FormValue("projectID"))
if parser.Err != nil {
response.ClientError(w, http.StatusBadRequest)
return
}
if exists, err := store.Exists(existSQL, projectID); err != nil {
response.ServerError(w, err)
return
} else if exists {
response.OK(w, nil)
return
}
if err := store.SetFeaturedProject(projectID); err != nil {
response.ServerError(w, err)
}
response.OK(w, nil)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:27,代码来源:project.go
示例8: GetProject
func GetProject(w http.ResponseWriter, r *http.Request) {
var parser store.Parser
projectID := parser.Int(r.FormValue("projectID"))
if parser.Err != nil {
response.ClientError(w, http.StatusBadRequest)
return
}
p, err := store.GetProject(projectID)
if err != nil {
response.ServerError(w, err)
return
}
if p.Author, err = store.GetUser(p.AuthorID); err != nil {
response.ServerError(w, err)
return
}
user := context.Get(r, "user").(store.User)
p.IsMember = store.IsMember(projectID, user.ID())
response.OK(w, p)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:25,代码来源:project.go
示例9: GetFriends
func GetFriends(w http.ResponseWriter, r *http.Request) {
var parser store.Parser
userID := parser.Int(r.FormValue("userID"))
if parser.Err != nil {
response.ClientError(w, http.StatusBadRequest)
return
}
users, err := store.GetFriends(userID)
if err != nil {
response.ServerError(w, err)
return
}
for i := range users {
if _, ok := h.connections[users[i].ID()]; ok {
users[i].SetStatus("Online")
} else {
users[i].SetStatus("Offline")
}
}
response.OK(w, users)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:25,代码来源:friend.go
示例10: UpdateTask
func UpdateTask(w http.ResponseWriter, r *http.Request) {
var parser store.Parser
projectID := parser.Int(r.FormValue("projectID"))
if parser.Err != nil {
response.ServerError(w, parser.Err)
return
}
user := context.Get(r, "user").(store.User)
if !user.IsMember(projectID) {
response.ClientError(w, http.StatusForbidden)
return
}
var taskID int64
if err := store.UpdateTask(store.UpdateTaskParams{
TaskID: r.FormValue("taskID"),
Title: r.FormValue("title"),
Description: r.FormValue("description"),
Tags: r.Form["tags"],
StartDate: r.FormValue("startDate"),
EndDate: r.FormValue("endDate"),
}); err != nil {
response.ServerError(w, err)
return
}
response.OK(w, taskID)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:30,代码来源:task.go
示例11: GetChats
func GetChats(w http.ResponseWriter, r *http.Request) {
if err := r.ParseForm(); err != nil {
response.ServerError(w, err)
return
}
var parser store.Parser
var startID int64
var count int64 = 10
if v, ok := r.Form["count"]; ok {
count = parser.Int(v[0])
}
if v, ok := r.Form["startID"]; ok {
startID = parser.Int(v[0])
}
channelID := parser.Int(r.FormValue("channelID"))
if parser.Err != nil {
response.ClientError(w, http.StatusBadRequest)
return
}
channelType := r.FormValue("channelType")
user := context.Get(r, "user").(store.User)
chats, err := store.GetChats(user.ID(), channelID, channelType, startID, count)
if err != nil {
response.ServerError(w, err)
return
}
response.OK(w, chats)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:34,代码来源:chat.go
示例12: logout
//
// /logout
//
func logout(w http.ResponseWriter, r *http.Request) {
switch r.Method {
case "POST":
session.Clear(w, r)
response.OK(w, "Successfully logged out.")
default:
response.ClientError(w, http.StatusMethodNotAllowed)
}
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:12,代码来源:api.go
示例13: apiMiddleware
// middleware that restricts access to users only
func apiMiddleware(w http.ResponseWriter, r *http.Request, next http.HandlerFunc) {
user := store.CurrentUser(r)
if user != nil && user.Exists() {
context.Set(r, "user", user)
next(w, r)
} else {
response.ClientError(w, http.StatusForbidden)
}
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:10,代码来源:api.go
示例14: login
//
// /login
//
func login(w http.ResponseWriter, r *http.Request) {
switch r.Method {
case "POST":
Login(w, r)
case "GET":
response.OK(w, store.CurrentUser(r))
default:
response.ClientError(w, http.StatusMethodNotAllowed)
}
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:13,代码来源:api.go
示例15: chat
//
// /chat
//
func chat(w http.ResponseWriter, r *http.Request) {
switch r.Method {
case "GET":
GetChats(w, r)
case "POST":
PostChat(w, r)
default:
response.ClientError(w, http.StatusMethodNotAllowed)
}
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:13,代码来源:api.go
示例16: UpdateProject
func UpdateProject(w http.ResponseWriter, r *http.Request) {
var parser store.Parser
projectID := parser.Int(r.FormValue("projectID"))
if parser.Err != nil {
response.ClientError(w, http.StatusBadRequest)
return
}
user := context.Get(r, "user").(store.User)
if !user.IsAuthor(projectID) {
response.ClientError(w, http.StatusForbidden)
return
}
for k, v := range r.Form {
var err error
if len(v) == 0 {
continue
}
switch k {
case "title":
err = store.UpdateProjectTitle(projectID, v[0])
case "tagline":
err = store.UpdateProjectTagline(projectID, v[0])
case "description":
err = store.UpdateProjectDescription(projectID, v[0])
}
if err != nil {
response.ServerError(w, err)
return
}
}
if _, err := store.SaveProjectImage(w, r, projectID); err != nil {
response.ServerError(w, err)
return
}
response.OK(w, nil)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:43,代码来源:project.go
示例17: adminUser
//
// /api/admin/user
//
// PUT:
// GET:
//
func adminUser(w http.ResponseWriter, r *http.Request) {
switch r.Method {
case "PUT":
switch r.FormValue("type") {
case "setAdmin":
store.SetAdmin(w, r)
case "unsetAdmin":
store.UnsetAdmin(w, r)
default:
response.ClientError(w, http.StatusBadRequest)
}
case "GET":
switch r.FormValue("type") {
default:
store.GetAdmins(w, r)
}
default:
response.ClientError(w, http.StatusMethodNotAllowed)
}
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:26,代码来源:api_admin.go
示例18: DeleteProject
func DeleteProject(w http.ResponseWriter, r *http.Request) {
var parser store.Parser
projectID := parser.Int(r.FormValue("projectID"))
if parser.Err != nil {
response.ClientError(w, http.StatusBadRequest)
return
}
user := context.Get(r, "user").(store.User)
if !user.IsAuthor(projectID) {
response.ClientError(w, http.StatusUnauthorized)
return
}
if err := store.DeleteProject(projectID); err != nil {
response.ServerError(w, err)
return
}
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:20,代码来源:project.go
示例19: loginSuccess
func loginSuccess(w http.ResponseWriter, r *http.Request, email string) {
session.Set(w, r, email)
user := store.CurrentUser(r)
if !user.Exists() {
response.ClientError(w, http.StatusForbidden)
return
}
response.OK(w, user)
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:11,代码来源:login.go
示例20: index
//
// /
//
func index(w http.ResponseWriter, r *http.Request) {
if r.Method != "GET" {
response.ClientError(w, http.StatusMethodNotAllowed)
}
if r.URL.Path == "/" {
http.ServeFile(w, r, "index.html")
} else if strings.IndexRune(r.URL.Path, '.') >= 0 {
http.ServeFile(w, r, r.URL.Path[1:])
}
}
开发者ID:bbh-labs,项目名称:openinnovation-old,代码行数:14,代码来源:api.go
注:本文中的github.com/bbhmakerlab/openinnovation/response.ClientError函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论