{"record":{"id":"6b08275b252b23d3","repo":"fish2018/pansou","slug":"d-6b0827","errorCode":null,"errorMessage":"中间步骤请求失败，状态码: %d","messagePattern":"中间步骤请求失败，状态码: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"plugin/panyq/panyq.go","lineNumber":1096,"sourceCode":"\t// 设置请求头，保持一致性\n\treq.Header.Set(\"Content-Type\", \"text/plain;charset=UTF-8\")\n\treq.Header.Set(\"next-action\", actionID)\n\treq.Header.Set(\"Referer\", intermediateURL)\n\treq.Header.Set(\"Origin\", BaseURL)\n\treq.Header.Set(\"next-router-state-tree\", url.QueryEscape(string(routerStateTreeJSON)))\n\treq.Header.Set(\"sec-ch-ua\", `\"Not)A;Brand\";v=\"8\", \"Chromium\";v=\"138\", \"Google Chrome\";v=\"138\"`)\n\treq.Header.Set(\"User-Agent\", \"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36\")\n\t\n\t// 发送请求并支持重试\n\tresp, err := p.doRequestWithRetry(client, req, MaxRetries)\n\tif err != nil {\n\t\treturn err\n\t}\n\tdefer resp.Body.Close()\n\t\n\t// 确认请求成功\n\tif resp.StatusCode != http.StatusOK {\n\t\treturn fmt.Errorf(\"中间步骤请求失败，状态码: %d\", resp.StatusCode)\n\t}\n\t\n\treturn nil\n}\n\n// getFinalLink 获取最终链接\nfunc (p *PanyqPlugin) getFinalLink(actionID, eid string, client *http.Client) (string, error) {\n\t// 检查缓存\n\tfinalLinkCacheLock.RLock()\n\tlinkCacheKey := fmt.Sprintf(\"link:%s:%s\", actionID, eid)\n\tif cachedLink, ok := finalLinkCache[linkCacheKey]; ok {\n\t\tfinalLinkCacheLock.RUnlock()\n\t\tif DebugLog {\n\t\t\tfmt.Printf(\"panyq: 缓存命中最终链接: %s\\n\", eid)\n\t\t}\n\t\treturn cachedLink, nil\n\t}\n\tfinalLinkCacheLock.RUnlock()","sourceCodeStart":1078,"sourceCodeEnd":1114,"githubUrl":"https://github.com/fish2018/pansou/blob/beaa56133755a548ebc51b090b3816e2ae044aa6/plugin/panyq/panyq.go#L1078-L1114","documentation":"Status error in PanyqPlugin.performIntermediateStep (plugin/panyq/panyq.go:1096): an intermediate next-action request returned a non-200 status after retries, breaking the multi-step link resolution chain.","triggerScenarios":"Thrown at plugin/panyq/panyq.go:1096 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["触发 discoverActionIDs 重新发现 action ID","校验 routerStateTreeJSON 参数合法性","对失效 action ID 做缓存失效处理"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"beaa56133755a548ebc51b090b3816e2ae044aa6","analyzedAt":"2026-09-07T00:31:18.025Z","contentChangedAt":"2026-09-07T00:31:18.025Z","schemaVersion":2},"datasetVersion":"2026-09-15T23:17:13.987Z"}