По сути, у меня есть этот код, который загружает javascripts и другой контент в Rackspace с помощью Jclouds:
SwiftObject obj = cloudFilesClient.newSwiftObject();
obj.getInfo().setName(name);
obj.getInfo().setContentType(contentType);
obj.setPayload(payloadFile);
cloudFilesClient.putObject(container, obj);
Я заметил, что Chrome жалуется на то, что скрипты передаются с помощью text/plain
, и решил разобраться. curl -I
вместо этого сообщить: Content-Type: application/unknown
.
Я много гуглил и пытался найти некоторые подсказки, и я пробовал:
- вообще не устанавливая тип контента
- установка пустой строки (где-то нашел слух об этом)
- установка на
application/javascript
(правильно) - установка на
text/javascript
(неправильно, но часто) obj.getAllHeaders().put("Content-Type", contentType);
Когда раньше мы использовали базовый HTTP для загрузки, это работало без каких-либо ручных настроек.