发起对话接口,处理http 400异常报错
まだ誰も着手していません。
評価
調査の方向性
レスポンスが解析される com.coze.openapi.service.service.common.AbstractEventCallback.onResponse の43行目から始めます。initiate-conversation APIからの400レスポンスを再現し、errorStrがJSONでない場合にどのように処理されるかを確認します。JsonParseExceptionではなく、元のHTTP 400エラーの理由が返されれば完了です。
索引モデルが issue の本文から書いたものです。
説明
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'missing': was expecting ('true', 'false' or 'null')
at [Source: missing required Host header; line: 1, column: 8]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1702) ~[jackson-core-2.8.10.jar!/:2.8.10]
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:558) ~[jackson-core-2.8.10.jar!/:2.8.10]
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:2839) ~[jackson-core-2.8.10.jar!/:2.8.10]
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1903) ~[jackson-core-2.8.10.jar!/:2.8.10]
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:749) ~[jackson-core-2.8.10.jar!/:2.8.10]
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3850) ~[jackson-databind-2.8.10.jar!/:2.8.10]
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3799) ~[jackson-databind-2.8.10.jar!/:2.8.10]
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2858) ~[jackson-databind-2.8.10.jar!/:2.8.10]
at com.coze.openapi.service.service.common.AbstractEventCallback.onResponse(AbstractEventCallback.java:43) ~[coze-api-0.1.6.jar!/:?]
at retrofit2.OkHttpCall$1.onResponse$original$uVqJCFM2(OkHttpCall.java:161) ~[retrofit-2.9.0.jar!/:?]
at retrofit2.OkHttpCall$1.onResponse$original$uVqJCFM2$accessor$2S6hJ1Vv(OkHttpCall.java) ~[retrofit-2.9.0.jar!/:?]
at retrofit2.OkHttpCall$1$auxiliary$uF9zybcp.call(Unknown Source) ~[retrofit-2.9.0.jar!/:?]
at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:86) ~[skywalking-agent.jar:8.6.0]
at retrofit2.OkHttpCall$1.onResponse(OkHttpCall.java) ~[retrofit-2.9.0.jar!/:?]
at okhttp3.RealCall$AsyncCall.execute$original$bM12vPzc(RealCall.java:174) ~[okhttp-3.14.6.jar!/:?]
at okhttp3.RealCall$AsyncCall.execute$original$bM12vPzc$accessor$WsNoXPUc(RealCall.java) ~[okhttp-3.14.6.jar!/:?]
at okhttp3.RealCall$AsyncCall$auxiliary$USEDluia.call(Unknown Source) ~[okhttp-3.14.6.jar!/:?]
at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:86) ~[skywalking-agent.jar:8.6.0]
at okhttp3.RealCall$AsyncCall.execute(RealCall.java) ~[okhttp-3.14.6.jar!/:?]
at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32) ~[okhttp-3.14.6.jar!/:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_202]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_202]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_202]
怀疑是这里的errorStr并不是json格式,不过你们没打日志,我也不能确定,总之结果就是如果发起对话遇到了http400异常,没有返回我异常原因,而是返回我了一个jsonparse异常。希望尽快处理下吧。
- 主要言語
- Java
- スター
- 214
- フォーク
- 97
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
coze-dev/coze-java のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
PCMConfig类中缺少关键属性オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 42/100
-
sdk 和官方文档不一致オープン
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
coze-dev/coze-java の issue をすべて見る
似ている issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
メンテナーはふだん 1 日以内に返信
-
ci-failure-cause test-failure
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
nextcloud/notes-android#3367 ·
メンテナーはふだん 1 日以内に返信
-
Feature
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
MuntashirAkon/AppManager#2058 ·
-
SarifLogger: artifactLocation.uri is not properly encoded for file names containing '#', '?', or '%'オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
checkstyle/checkstyle#21721 ·
メンテナーはふだん 1 日以内に返信