MCPcopy Create free account
hub / github.com/aiprodcoder/MIXAPI / RelayTaskFetch

Function RelayTaskFetch

relay/relay_task.go:185–203  ·  view source on GitHub ↗
(c *gin.Context, relayMode int)

Source from the content-addressed store, hash-verified

183}
184
185func RelayTaskFetch(c *gin.Context, relayMode int) (taskResp *dto.TaskError) {
186 respBuilder, ok := fetchRespBuilders[relayMode]
187 if !ok {
188 taskResp = service.TaskErrorWrapperLocal(errors.New("invalid_relay_mode"), "invalid_relay_mode", http.StatusBadRequest)
189 }
190
191 respBody, taskErr := respBuilder(c)
192 if taskErr != nil {
193 return taskErr
194 }
195
196 c.Writer.Header().Set("Content-Type", "application/json")
197 _, err := io.Copy(c.Writer, bytes.NewBuffer(respBody))
198 if err != nil {
199 taskResp = service.TaskErrorWrapper(err, "copy_response_body_failed", http.StatusInternalServerError)
200 return
201 }
202 return
203}
204
205func sunoFetchRespBodyBuilder(c *gin.Context) (respBody []byte, taskResp *dto.TaskError) {
206 userId := c.GetInt("id")

Callers 1

taskRelayHandlerFunction · 0.92

Calls 3

TaskErrorWrapperLocalFunction · 0.92
TaskErrorWrapperFunction · 0.92
CopyMethod · 0.80

Tested by

no test coverage detected