agentscope-ai / agentscope-ai/agentscope-java

[Bug]:GeminiMediaConverter rejects media URLs with query strings

未关闭
#1,645 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
area/core/model bug
主要语言
Java
星标
5.6k
派生
1.3k
平均合并
4 天 12 小时
30 天内合并 PR
77

描述

**Describe the bug**

`GeminiMediaConverter` rejects valid remote media URLs when the URL contains a query string or fragment.

For example, an image URL such as:

```text
http://localhost:64260/cat.png?token=abc123
```

is a valid PNG URL, but AgentScope-Java parses the extension as:

```text
png?token=abc123
```

and throws `Unsupported file extension`.

This affects common user scenarios such as CDN URLs, object storage signed URLs, temporary download URLs, and media URLs with cache/auth parameters.

**Expected behavior**

The converter should ignore the query string and fragment when inferring the file extension.

For:

```text
http://127.0.0.1:64260/cat.png?token=abc123
```

it should infer:

```text
png
```

and produce MIME type:

```text
image/png
```

The same should apply to URLs such as:

```text
https://cdn.example.com/audio.mp3?download=1
https://cdn.example.com/video.mp4#preview
```

**Error messages**

```text
FAILED: java.lang.IllegalArgumentException
MESSAGE: Unsupported file extension: png?token=abc123 for media type: image, expected one of: [png, jpeg, jpg, webp, heic, heif]
```

**Environment (please complete the following information):**

- AgentScope-Java Version:2.0
- Java Version: 17

**Additional context**

I would like to submit a PR to help fix this issue.

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。