Я использую метод обещания Grails asyn c для отправки HTTP-запросов на внешний API, и все, кажется, работает нормально, но сейчас я испытываю ошибки, когда сообщение об ошибке просто «Внутренняя ошибка сервера».
Есть ли способ узнать немного больше о том, что на самом деле означает Внутренняя ошибка сервера?
Мой код: -
import static grails.async.Promises.*
def send_sms(String smsMobile, String smsMessage, String smsToken, String smsEnabled){
if (smsEnabled == "1"){
def p = task {
def http = new HTTPBuilder( 'https://api.my_sms_server.here.com' )
def postBody = [token: smsToken, number: smsMobile, message: smsMessage ]
http.post( path: '/api/text/1/submitSMS', body: postBody,
requestContentType: URLENC ) { resp -> }}
p.onError { Throwable err ->
log.error "An error occured ${err.message}"}
p.onComplete { result ->
log.info "Promise returned $result" + " when sending an SMS to " + smsMobile}}
else{
log.info "Sending Test Virtual SMS to " + smsMobile + " with message - " + smsMessage
log.info "SMS Token supplied = " + smsToken
return true}
}
И я получаю следующие строки в моих журналах: -
info.log
Promise returned null when sending an SMS to 07811111111
Promise returned null when sending an SMS to 07911111111
Promise returned null when sending an SMS to 07711111111
error.log
An error occured Internal Server Error
An error occured Internal Server Error
An error occured Internal Server Error
etc.
Так что некоторые вызовы API не отправляются, и я хотел бы понять, почему.