jQuery Autocomplete插件依赖于奇怪的响应格式。具体来说,它是一个以换行符分隔的换行符对列表,每对的第一个条目是一些格式化的文本,后者是带有一些数据的JSON对象。
一个例子:
Fuzzy Bunnies|{ id: '1234-fuzzy-bunnies', type: 'slippers' }
Loud Hawaiian Shirt|{ id: '3993-loud-hawaiian-shirt', type: 'shirt', sizes: ['S', 'M', 'L'] }
我的问题是:什么样的MIME类型对此有意义?它并不完全是application/json
因为奇怪的管道以及列表是换行符分隔的事实,而不是表达为Javascript数组。它也不是text/plain
,因为只有第一部分是纯文本(甚至可能允许标记 - 我不确定)。
答案 0 :(得分:4)
您应该将其发送为text/plain
,因为这就是它的真实含义。该文本的某些部分具有特定含义的事实并不意味着该文件为json
。
否则,例如,您可能会争辩说存储单个文本变量的二进制文件是文本文件。
如果您将该文件作为json
发送,则可能会遇到一些问题,因为这不是有效的json
文件。
答案 1 :(得分:-1)
Content-Type: application/json; charset=iso-8859-1