2016-09-09 3 views
2

Я пытаюсь создать билет в системе otrs, но он все равно возвращает 301: Moved Permanentetly. Я использую OTRS 5 бесплатно.Невозможно создать билет otrs через общий интерфейс

Мой запрос URI: https://some.domain.com/nph-genericinterface.pl/Webservice/GenericTicketREST/Ticket

И тело сообщения:

{ 
    "UserLogin": "mbar", 

    "Password": "*****", 

    "Ticket" : 
    { 
    "Title": "raz dwa trzy", 
    "Queue": "Raw", 
    "Lock": "unlock", 
    "Type": "Unclassified", 
    "State": "new", 
    "Priority": "3 normal", 
    "Owner": "mbar", 
    "CustomerUser": "mbar" 
    }, 

    "Article": 
    { 
    "Subject" : "jakiś temat", 
    "Body" : "test test tes test", 
    "ContentType": "text/plain; charset=utf8"  

    } 
} 

Это мой конфигурации службы:

--- 
Debugger: 
    DebugThreshold: debug 
    TestMode: '0' 
Description: Ticket Connector REST Sample 
FrameworkVersion: 4.x git 
Provider: 
    Operation: 
    SessionCreate: 
     Description: Creates a Session 
     MappingInbound: {} 
     MappingOutbound: {} 
     Type: Session::SessionCreate 
    TicketCreate: 
     Description: Creates a Ticket 
     MappingInbound: {} 
     MappingOutbound: {} 
     Type: Ticket::TicketCreate 
    TicketGet: 
     Description: Retrieves Ticket data 
     MappingInbound: {} 
     MappingOutbound: {} 
     Type: Ticket::TicketGet 
    TicketSearch: 
     Description: Search for Tickets 
     MappingInbound: {} 
     MappingOutbound: {} 
     Type: Ticket::TicketSearch 
    TicketUpdate: 
     Description: Updates a Ticket 
     MappingInbound: {} 
     MappingOutbound: {} 
     Type: Ticket::TicketUpdate 
    Transport: 
    Config: 
     KeepAlive: '' 
     MaxLength: '100000000' 
     RouteOperationMapping: 
     SessionCreate: 
      RequestMethod: 
      - POST 
      Route: /Session 
     TicketCreate: 
      RequestMethod: 
      - POST 
      Route: /Ticket 
     TicketGet: 
      RequestMethod: 
      - GET 
      Route: /Ticket/:TicketID 
     TicketSearch: 
      RequestMethod: 
      - GET 
      Route: /Ticket 
     TicketUpdate: 
      RequestMethod: 
      - PATCH 
      Route: /Ticket/:TicketID 
    Type: HTTP::REST 
RemoteSystem: '' 
Requester: 
    Transport: 
    Type: '' 

Можете ли вы помочь мне решить эту проблему?

ответ

1

Если вы получили ошибку HTTP 301, это, скорее всего, означает, что вы не настроили свой веб-сервер правильно, и ваш сервер перенаправляется в какое-то место. OTRS обычно либо отвечает 200 OK, либо 500 Internal server error.

Проверьте свои журналы Apache, чтобы узнать, что там происходит.

я могу создать билет с curl как это:

curl "http://example.com/otrs/nph-genericinterface.pl/Webservice/GenericTicketConnectorREST/Ticket?UserLogin=login&Password=sekret" \ 
-H "Content-Type: application/json" \ 
-d @create_ticket.json 

где create_ticket.json будет что-то вроде этого:

{ 
    "Ticket" : { 
     "Queue" : "Raw", 
     "Priority" : "3 normal", 
     "CustomerUser" : "max", 
     "Title" : "REST Create Test", 
     "State" : "open", 
     "Type" : "Unclassified" 
    }, 
    "Article" : { 
     "ContentType" : "text/plain; charset=utf8", 
     "Subject" : "Rest Create Test", 
     "Body" : "This is only a test" 
    } 
} 
Смежные вопросы