Я разрабатываю приложение, которое извлекает данные из базы данных JIRA. Я использую RESTClient API для базовой проверки подлинности, используя метод post.Grails: метод POST для основного архива JIRA - неподдерживаемый тип носителя
Полный код (отредактированный):
class IssuesController {
def xyz = this.encodeAuth("username", "password")
def index() {
def login = new RESTClient ('http://my-jira/rest/auth/1/')
def response = login.post(
path : 'session',
headers : ['Authorization' : 'Basic ' + xyz + '=='])
render response.data.toString()
}
public String encodeAuth(username, password) {
def authC = username + ':' + password
def bytes = authC.bytes
return bytes.encodeBase64().toString();
}
Я получаю HTTPResponseException
с сообщением Unsupported Media Type
. Если я использую , то получите метод, аутентификация работает просто отлично. (Но он не запускает сеанс, поэтому не используется). Я даже пытался изменить заголовки, headers : ['Content-Type' : 'application/json', 'Accept' : 'application/json']
.
Используется FireBug для анализа заголовков сети, заголовки Content-Type
и Accept
по-прежнему не меняются.
Response Headers
HTTP/1.1 500 Internal Server Error
Content-Type: text/html;charset=UTF-8
Content-Language: en-US
Connection: close
Request Headers
GET /GTPortal/issues/index HTTP/1.1
Host: localhost:8099
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Любая помощь, почему сообщение Неподдерживаемый тип носителя при использовании POST !?
спасибо! это помогло. –