java-okhttp.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. export const JavaOkhttpCodegen = {
  2. id: "java-okhttp",
  3. name: "Java OkHttp",
  4. generator: ({
  5. auth,
  6. httpUser,
  7. httpPassword,
  8. method,
  9. url,
  10. pathName,
  11. queryString,
  12. bearerToken,
  13. headers,
  14. rawInput,
  15. rawParams,
  16. rawRequestBody,
  17. contentType,
  18. }) => {
  19. const requestString = []
  20. requestString.push("OkHttpClient client = new OkHttpClient().newBuilder().build();")
  21. if (["POST", "PUT", "PATCH", "DELETE"].includes(method)) {
  22. let requestBody = rawInput ? rawParams : rawRequestBody
  23. if (contentType.includes("x-www-form-urlencoded")) {
  24. requestBody = `"${requestBody}"`
  25. } else requestBody = JSON.stringify(requestBody)
  26. requestString.push(`MediaType mediaType = MediaType.parse("${contentType}");`)
  27. requestString.push(`RequestBody body = RequestBody.create(mediaType,${requestBody});`)
  28. }
  29. requestString.push("Request request = new Request.Builder()")
  30. requestString.push(`.url(\"${url}${pathName}${queryString}\")`)
  31. if (["POST", "PUT", "PATCH", "DELETE"].includes(method)) {
  32. requestString.push(`.method(\"${method}\", body)`)
  33. } else {
  34. requestString.push(`.method(\"${method}\", null)`)
  35. }
  36. if (auth === "Basic Auth") {
  37. const basic = `${httpUser}:${httpPassword}`
  38. requestString.push(
  39. `.addHeader("authorization", "Basic ${window.btoa(
  40. unescape(encodeURIComponent(basic))
  41. )}") \n`
  42. )
  43. } else if (auth === "Bearer Token" || auth === "OAuth 2.0") {
  44. requestString.push(`.addHeader("authorization", "Bearer ${bearerToken}" ) \n`)
  45. }
  46. if (headers) {
  47. headers.forEach(({ key, value }) => {
  48. if (key) requestString.push(`.addHeader(\"${key}\", \"${value}\")`)
  49. })
  50. }
  51. requestString.push(`.build();`)
  52. requestString.push("Response response = client.newCall(request).execute();")
  53. return requestString.join("\n")
  54. },
  55. }