apisix-go-plugin-runner icon indicating copy to clipboard operation
apisix-go-plugin-runner copied to clipboard

ext-plugin-post-resp processing content-type have problem

Open cod-soap opened this issue 2 years ago • 2 comments

Issue description

ext-plugin-post-resp processing content-type have problem

I have seen fixed the issue: https://github.com/apache/apisix/pull/8588 But still have problem

Environment

  • APISIX Go Plugin Runner's version: 0.5.0
  • APISIX version: 3.6.0
  • Go version: 1.19.0
  • OS (cmd: uname -a): Linux asec 5.15.0-78-generic 85-Ubuntu SMP Fri Jul 7 15:25:09 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux (running in docker)

Minimal test code / Steps to reproduce the issue

1.plugin run in debug mode

2.Changed the original text/html; charset=utf-8 to: text/plain; charset=utf-8 The code doesn't even do any business logic:

type FileRetentionConfig struct {
	Enable bool `json:"enable"`
}

type FileRetentionPlugin struct {
}

func (f FileRetentionPlugin) Name() string {
	return "file_retention_plugin"
}

func (f FileRetentionPlugin) ParseConf(in []byte) (conf interface{}, err error) {
	config := FileRetentionConfig{}
	err = jsoniter.Unmarshal(in, &config)
	return config, err
}

func (f FileRetentionPlugin) RequestFilter(conf interface{}, w http.ResponseWriter, r pkgHTTP.Request) {
	// do nothing
}

func (f FileRetentionPlugin) ResponseFilter(conf interface{}, w pkgHTTP.Response) {
	contentType := w.Header().Get("content-type")
	w.Header().Set("content-type", contentType)
	log.Infof("contentType:%v", contentType)
}

What's the actual result? (including assertion message & call stack if applicable)

hanged the original text/html; charset=utf-8 to: text/plain; charset=utf-8

What's the expected result?

do not change content-type or change to the value specified in the code

cod-soap avatar Nov 02 '23 03:11 cod-soap

lost content-type?

scoolor avatar Nov 19 '23 09:11 scoolor

same problem

fzdwx avatar Jul 29 '24 07:07 fzdwx