|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Привет друзья. С пятницей всех! Как реализуется простой http-echo-time-server на разных языках разработки и технологиях. C++, C#, Delphi Python, Go e.t.c? Пример пользования: Код: sql 1.
Отвечает Код: sql 1. 2.
Как-бы вы делали? Какое количество мозговых усилий разработки и внешних зависимостей нужно затащить в код чтобы реализовать тестовый ендпоинт для тестирования чего-либо? Разумеется я предполагаю embedded http server. Тоесть такой сервер который встраивается в ваш код. Всякие Апачи и IIS - не наш вариант! ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2021, 18:17 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
mayton, Это очень сильно зависит от фремйворка, а не от языка. Вот пример с главной страницы dlang Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Я делал пример на safe-c - тоже немногим длиннее, http сервер в стандартной библиотеке. Нужно просто написать коллбэки. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2021, 19:59 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Реализовывал свой Embedded Http сервер на VB.NET. Использовал TcpListener + TcpClient. Могу пример показать, как сделать аналогично вашего примера (возврат времени). Сервер очень простой, только GET/POST запросы принимает, при чём для POST только в виде сырых данных, GET обрабатывается и возвращается коллекция параметров, чтобы пользователь мог сразу писать бизнес логику. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2021, 17:35 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
VSVLAD, Давай ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2021, 19:55 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
mayton, Вот пример с временем. В спойлере готовый класс. Для небольших и в меру несложных проектов пойдёт. Я делал консольное приложение и оно поднимало веб-интерфейс, чтобы можно было управлять им с других серверов нашей локальной сети. Со своей задачей справлялось. В приципе если подшаманить, можно даже загрузку файлов реализовать и прочий "взрослый" функционал, но это конечно же не полноценный сервер Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37.
Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. 374. 375. 376. 377. 378. 379. 380. 381. 382. 383. 384. 385. 386. 387. 388. 389. 390. 391. 392. 393. 394. 395. 396. 397. 398. 399. 400. 401. 402. 403. 404. 405. 406. 407. 408. 409. 410. 411. 412. 413. 414. 415. 416. 417. 418. 419. 420. 421. 422. 423. 424. 425. 426. 427. 428. 429. 430. 431. 432. 433. 434. 435. 436. 437. 438. 439. 440. 441. 442. 443. 444. 445. 446. 447. 448. 449. 450. 451. 452. 453. 454. 455. 456. 457. 458. 459. 460. 461. 462. 463. 464. 465. 466. 467. 468. 469. 470. 471. 472. 473. 474. 475. 476. 477. 478. 479. 480. 481. 482. 483. 484. 485. 486. 487. 488. 489. 490. 491. 492. 493. 494. 495. 496. 497. 498. 499. 500. 501. 502. 503. 504. 505. 506. 507. 508. 509. 510. 511. 512. 513. 514. 515. 516. 517. 518. 519. 520. 521. 522. 523. 524. 525. 526. 527. 528. 529. 530. 531. 532. 533. 534. 535. 536. 537. 538. 539. 540. 541. 542. 543. 544. 545. 546. 547. 548. 549. 550. 551. 552. 553. 554. 555. 556. 557. 558. 559. 560. 561. 562. 563. 564. 565. 566. 567. 568. 569. 570. 571. 572. 573. 574. 575. 576. 577. 578. 579. 580. 581. 582. 583. 584. 585. 586. 587. 588. 589. 590. 591. 592. 593. 594. 595. 596. 597.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2021, 22:17 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Нифига себе букв. Там всё надо? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 01:08 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Вот еще Node. Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 01:21 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Java с использованием Jetty 11.0.7 Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32.
Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Удобно для всяких там http-mocks. Размер бинарника получается 2 мегабайта. Стартует 2-3 секунды. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 01:57 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Завтра соберу эхо-сервер для Spring WebFlux. Надо взять только один из рабочих проектов и выкинуть всё ненужное. Реактивность для эхо-сервера (для данного топика!) не нужна. Хотя любопытно посмотреть что покажет JMeter если сравнивать например Node и WebFlux. И DLang-овский тоже сравнить. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 02:01 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
mayton, Нода мне больше нравится. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 07:53 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
У меня на ней очень офигенный проект висит. Висит не потому что я - дурак, или кто-то дурак, а потому что сложный. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 07:56 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
При чем тут дурак или не дурак? Нода - лёгкая. Очень быстро стартует. У меня вообще-то к ней нет претензий. Единственная претензия - это язык разработки где слабая типизация. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 11:16 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
mayton, Вот пример, где меньше букв :) но это уже на основе встроенного класса HttpListener. Как уже сказали, всё зависит от библиотек/фреймворков, которые идут к языку. Мне лично HttpListener не нравится по определенным причинам. Поэтому реализовал свой сервер на сокетах Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 11:56 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Go (где SRC под Go ?!) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 12:44 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Да. Это копи-паста из стандартной документации по Go-хомяку. Я тоже ее вчера взял и начал делать функцию текущего даты-времени. Но уже было поздно и думал сегодня сделаю. Почему эта документация выглядит как-то по уродски? Язык - хороший. Но пишут как для детей. Будто - это язык для обучения информатике в детском садике? Никто не знает? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 12:52 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
VSVLAD, о спс. Вот это уже получше выглядит. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 12:53 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
mayton Почему эта документация выглядит как-то по уродски? Язык - хороший. Но пишут как для детей. Будто - это язык для обучения информатике в детском садике? Никто не знает? потому что гугл его придумал, чтобы программисты могли максимально быстро втянуться в процесс он задуман, как универсальный язык для всего парка программеров ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 14:08 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Сделал на Гошке. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Форматирование даты выглядит как-то стрёмно... ну да бох с ним. Знающие - пофиксят а мне и так хорошо. Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 19:41 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
mayton Да. Это копи-паста из стандартной документации по Go-хомяку. Я тоже ее вчера взял и начал делать функцию текущего даты-времени. Но уже было поздно и думал сегодня сделаю. Почему эта документация выглядит как-то по уродски? Язык - хороший. Но пишут как для детей. Будто - это язык для обучения информатике в детском садике? Никто не знает? Ты прав. Го для тех, кто не осилил даже Яву ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2021, 23:03 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2021, 00:47 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
mayton, Spring-boot решение: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2021, 07:14 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
Если я перепишу так getTime. Вроде ничего не меняется. Кода меньше. Код: java 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2021, 16:40 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
fkthat Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Красиво. И асинхронщина - уже часть языка C# ? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2021, 18:19 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
mayton И асинхронщина - уже часть языка C# ? Так уже почти 10 лет - начиная с пятой версии. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2021, 18:54 |
|
Тяпничный http-echo-time-server на разных языках разработки
|
|||
---|---|---|---|
#18+
mayton Если я перепишу так getTime. Вроде ничего не меняется. Кода меньше. Код: java 1. 2. 3. 4. 5. 6.
Так тоже будет работать. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2021, 21:54 |
|
|
start [/forum/topic.php?fid=16&msg=40117428&tid=1339611]: |
0ms |
get settings: |
20ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
38ms |
get topic data: |
4ms |
get forum data: |
1ms |
get page messages: |
537ms |
get tp. blocked users: |
1ms |
others: | 2758ms |
total: | 3366ms |
0 / 0 |