MCPcopy Create free account
hub / github.com/aurora-develop/aurora / responses

Method responses

initialize/handlers.go:445–593  ·  view source on GitHub ↗
(c *gin.Context)

Source from the content-addressed store, hash-verified

443}
444
445func (h *Handler) responses(c *gin.Context) {
446 var responsesRequest officialtypes.ResponsesAPIRequest
447 err := c.BindJSON(&responsesRequest)
448 if err != nil {
449 c.JSON(400, gin.H{"error": gin.H{
450 "message": "Request must be proper JSON",
451 "type": "invalid_request_error",
452 "param": nil,
453 "code": err.Error(),
454 }})
455 return
456 }
457
458 original_request, err := responsesRequest.ToAPIRequest()
459 if err != nil {
460 c.JSON(400, gin.H{"error": gin.H{
461 "message": err.Error(),
462 "type": "invalid_request_error",
463 "param": "input",
464 "code": "invalid_request_error",
465 }})
466 return
467 }
468
469 proxyUrl := h.proxy.GetProxyIP()
470 input_tokens := 0
471 for _, message := range original_request.Messages {
472 input_tokens += util.CountToken(message.Text())
473 }
474 secret, status, err := h.secretFromAuthorization(c, original_requestHasFiles(original_request), false, proxyUrl)
475 if err != nil {
476 c.JSON(status, gin.H{"error": gin.H{
477 "message": err.Error(),
478 "type": "authorization_error",
479 "param": "Authorization",
480 "code": status,
481 }})
482 return
483 }
484 if secret == nil {
485 c.JSON(400, gin.H{"error": "Not Account Found."})
486 c.Abort()
487 return
488 }
489
490 uid := uuid.NewString()
491 client := bogdanfinn.NewStdClient()
492
493 translated_request := chatgptrequestconverter.ConvertAPIRequest(original_request, secret, proxyUrl, client)
494
495 // 按 conversationID 复用 ChatClientState,保持 DeviceID/SessionID 一致
496 var clientState *chatgpt.ChatClientState
497 if translated_request.ConversationID != "" {
498 clientState = h.sessions.Get(translated_request.ConversationID)
499 }
500 if clientState == nil {
501 clientState = chatgpt.NewChatClientState()
502 }

Callers

nothing calls this directly

Calls 13

ToAPIRequestMethod · 0.95
NoteTurnResultMethod · 0.95
CountTokenFunction · 0.92
NewStdClientFunction · 0.92
original_requestHasFilesFunction · 0.85
GetProxyIPMethod · 0.80
GetMethod · 0.80
RegisterMethod · 0.80
SetMethod · 0.80
StringMethod · 0.80

Tested by

no test coverage detected