计算机网络学习指南计算机网络学习指南
首页
基础教程
进阶内容
实战案例
编程指南
首页
基础教程
进阶内容
实战案例
编程指南
  • 实战案例

    • 💼 实战案例
    • 🎯 学习目标
    • 🚀 学习路线
    • 📊 章节概览
  • 💡 学习建议
  • 🎓 学完之后
  • 第1章 - 前端开发的网络应用
  • 第2章 - 后端开发的网络应用
  • 第3章 - 运维与 DevOps
  • 第4章 - 测试与网络调试
  • 第5章 - 网络故障排查

��#� �,{4��z �-� �KmՋ-N�vQ�~�Ջ � ��U �KmՋ�] z^ g�S�N� � �\O:NKmՋ�] z^ �O����KmՋT�yQ�~�c�S0R�gQ�~��Bl0!j�bT�yQ�~�s�X& & �c�cQ�~�Ջ�b���S�N��O�fؚHe0W�S�s�T�[MO�0 � �ُ�N�z �bO&^Of[NKmՋ�]\O-N�g�[(u�vQ�~�Ջ�b���T�]wQ ���Ob:NQ�~KmՋN�[� � �#�#� �=���� ��c�SKmՋ�]wQ � �#�#�#� �P�o�s�t�m�a�n� �O(u � �#�#�#�#� ��W@x��Bl � ����j�a�v�a�s�c�r�i�p�t� �/�/� �G�E�T� ���Bl:y�O �G�E�T� �h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s� � �H�e�a�d�e�r�s�:� �A�u�t�h�o�r�i�z�a�t�i�o�n�:� �B�e�a�r�e�r� �{�{�a�c�c�e�s�s��t�o�k�e�n�}�}� �C�o�n�t�e�n�t�-�T�y�p�e�:� �a�p�p�l�i�c�a�t�i�o�n�/�j�s�o�n� � �/�/� �O(u�s�X�Sϑ �{�{�b�a�s�e��u�r�l�}�}�/�u�s�e�r�s�/�{�{�u�s�e�r��i�d�}�}� ���� � �#�#�#�#� �KmՋ�,g � ����j�a�v�a�s�c�r�i�p�t� �/�/� �P�r�e�-�r�e�q�u�e�s�t� �S�c�r�i�p�t� �(���BlMRgbL�)� �/�/� �ub��:gpenc �p�m�.�g�l�o�b�a�l�s�.�s�e�t�(�"�r�a�n�d�o�m��e�m�a�i�l�"�,� ��t�e�s�t�$�{�M�a�t�h�.�r�a�n�d�o�m�(�)�}�@�e�x�a�m�p�l�e�.�c�o�m��)�;� � �/�/� ����SS_MR�e��3b �p�m�.�g�l�o�b�a�l�s�.�s�e�t�(�"�t�i�m�e�s�t�a�m�p�"�,� �D�a�t�e�.�n�o�w�(�)�)�;� � �/�/� ��N�s�X�Sϑ���S �t�o�k�e�n� �c�o�n�s�t� �t�o�k�e�n� �=� �p�m�.�e�n�v�i�r�o�n�m�e�n�t�.�g�e�t�(�"�a�c�c�e�s�s��t�o�k�e�n�"�)�;� �c�o�n�s�o�l�e�.�l�o�g�(�"�T�o�k�e�n�:�"�,� �t�o�k�e�n�)�;� ���� � ����j�a�v�a�s�c�r�i�p�t� �/�/� �T�e�s�t�s� �(��T�^TgbL�)� �/�/� �KmՋ�rx �p�m�.�t�e�s�t�(�"�S�t�a�t�u�s� �c�o�d�e� �i�s� �2�0�0�"�,� �f�u�n�c�t�i�o�n� �(�)� �{� � � � � �p�m�.�r�e�s�p�o�n�s�e�.�t�o�.�h�a�v�e�.�s�t�a�t�u�s�(�2�0�0�)�;� �}�)�;� � �/�/� �KmՋ�T�^�e�� �p�m�.�t�e�s�t�(�"�R�e�s�p�o�n�s�e� �t�i�m�e� �i�s� �l�e�s�s� �t�h�a�n� �5�0�0�m�s�"�,� �f�u�n�c�t�i�o�n� �(�)� �{� � � � � �p�m�.�e�x�p�e�c�t�(�p�m�.�r�e�s�p�o�n�s�e�.�r�e�s�p�o�n�s�e�T�i�m�e�)�.�t�o�.�b�e�.�b�e�l�o�w�(�5�0�0�)�;� �}�)�;� � �/�/� �KmՋ�T�^SO �p�m�.�t�e�s�t�(�"�R�e�s�p�o�n�s�e� �h�a�s� �s�u�c�c�e�s�s� �f�i�e�l�d�"�,� �f�u�n�c�t�i�o�n� �(�)� �{� � � � � �c�o�n�s�t� �j�s�o�n�D�a�t�a� �=� �p�m�.�r�e�s�p�o�n�s�e�.�j�s�o�n�(�)�;� � � � � �p�m�.�e�x�p�e�c�t�(�j�s�o�n�D�a�t�a�)�.�t�o�.�h�a�v�e�.�p�r�o�p�e�r�t�y�(�'�s�u�c�c�e�s�s�'�)�;� � � � � �p�m�.�e�x�p�e�c�t�(�j�s�o�n�D�a�t�a�.�s�u�c�c�e�s�s�)�.�t�o�.�b�e�.�t�r�u�e�;� �}�)�;� � �/�/� �KmՋ�T�^4Y �p�m�.�t�e�s�t�(�"�C�o�n�t�e�n�t�-�T�y�p�e� �i�s� �J�S�O�N�"�,� �f�u�n�c�t�i�o�n� �(�)� �{� � � � � �p�m�.�r�e�s�p�o�n�s�e�.�t�o�.�h�a�v�e�.�h�e�a�d�e�r�(�"�C�o�n�t�e�n�t�-�T�y�p�e�"�)�;� � � � � �p�m�.�e�x�p�e�c�t�(�p�m�.�r�e�s�p�o�n�s�e�.�h�e�a�d�e�r�s�.�g�e�t�(�"�C�o�n�t�e�n�t�-�T�y�p�e�"�)�)�.�t�o�.�i�n�c�l�u�d�e�(�"�a�p�p�l�i�c�a�t�i�o�n�/�j�s�o�n�"�)�;� �}�)�;� � �/�/� ��OX[�T�^penc0R�s�X�Sϑ �c�o�n�s�t� �r�e�s�p�o�n�s�e�D�a�t�a� �=� �p�m�.�r�e�s�p�o�n�s�e�.�j�s�o�n�(�)�;� �i�f� �(�r�e�s�p�o�n�s�e�D�a�t�a�.�d�a�t�a� �&�&� �r�e�s�p�o�n�s�e�D�a�t�a�.�d�a�t�a�.�i�d�)� �{� � � � � �p�m�.�e�n�v�i�r�o�n�m�e�n�t�.�s�e�t�(�"�u�s�e�r�_�i�d�"�,� �r�e�s�p�o�n�s�e�D�a�t�a�.�d�a�t�a�.�i�d�)�;� � � � � �c�o�n�s�o�l�e�.�l�o�g�(�"�S�a�v�e�d� �u�s�e�r�_�i�d�:�"�,� �r�e�s�p�o�n�s�e�D�a�t�a�.�d�a�t�a�.�i�d�)�;� �}� � �/�/� �����pe�~ �p�m�.�t�e�s�t�(�"�R�e�s�p�o�n�s�e� �h�a�s� �u�s�e�r�s� �a�r�r�a�y�"�,� �f�u�n�c�t�i�o�n� �(�)� �{� � � � � �c�o�n�s�t� �j�s�o�n�D�a�t�a� �=� �p�m�.�r�e�s�p�o�n�s�e�.�j�s�o�n�(�)�;� � � � � �p�m�.�e�x�p�e�c�t�(�j�s�o�n�D�a�t�a�.�d�a�t�a�)�.�t�o�.�b�e�.�a�n�(�'�a�r�r�a�y�'�)�;� � � � � �p�m�.�e�x�p�e�c�t�(�j�s�o�n�D�a�t�a�.�d�a�t�a�.�l�e�n�g�t�h�)�.�t�o�.�b�e�.�a�b�o�v�e�(�0�)�;� �}�)�;� � �/�/� ������[a��~�g �p�m�.�t�e�s�t�(�"�U�s�e�r� �h�a�s� �r�e�q�u�i�r�e�d� �f�i�e�l�d�s�"�,� �f�u�n�c�t�i�o�n� �(�)� �{� � � � � �c�o�n�s�t� �u�s�e�r� �=� �p�m�.�r�e�s�p�o�n�s�e�.�j�s�o�n�(�)�.�d�a�t�a�[�0�]�;� � � � � �p�m�.�e�x�p�e�c�t�(�u�s�e�r�)�.�t�o�.�h�a�v�e�.�p�r�o�p�e�r�t�y�(�'�i�d�'�)�;� � � � � �p�m�.�e�x�p�e�c�t�(�u�s�e�r�)�.�t�o�.�h�a�v�e�.�p�r�o�p�e�r�t�y�(�'�n�a�m�e�'�)�;� � � � � �p�m�.�e�x�p�e�c�t�(�u�s�e�r�)�.�t�o�.�h�a�v�e�.�p�r�o�p�e�r�t�y�(�'�e�m�a�i�l�'�)�;� �}�)�;� ���� � �#�#�#�#� �ꁨRSKmՋƖT � ����j�a�v�a�s�c�r�i�p�t� �/�/� �C�o�l�l�e�c�t�i�o�n� �R�u�n�n�e�r� ��Sϑ �/�/� �R�^ �d�a�t�a�.�j�s�o�n� ��e�N �[� � � �{� � � � � �"�u�s�e�r�n�a�m�e�"�:� �"�u�s�e�r�1�"�,� � � � � �"�e�m�a�i�l�"�:� �"�u�s�e�r�1�@�e�x�a�m�p�l�e�.�c�o�m�"�,� � � � � �"�p�a�s�s�w�o�r�d�"�:� �"�p�a�s�s�w�o�r�d�1�2�3�"� � � �}�,� � � �{� � � � � �"�u�s�e�r�n�a�m�e�"�:� �"�u�s�e�r�2�"�,� � � � � �"�e�m�a�i�l�"�:� �"�u�s�e�r�2�@�e�x�a�m�p�l�e�.�c�o�m�"�,� � � � � �"�p�a�s�s�w�o�r�d�"�:� �"�p�a�s�s�w�o�r�d�4�5�6�"� � � �}� �]� � �/�/� �(W��Bl-NO(u �P�O�S�T� �{�{�b�a�s�e�_�u�r�l�}�}�/�r�e�g�i�s�t�e�r� � �B�o�d�y� �(�J�S�O�N�)�:� �{� � � �"�u�s�e�r�n�a�m�e�"�:� �"�{�{�u�s�e�r�n�a�m�e�}�}�"�,� � � �"�e�m�a�i�l�"�:� �"�{�{�e�m�a�i�l�}�}�"�,� � � �"�p�a�s�s�w�o�r�d�"�:� �"�{�{�p�a�s�s�w�o�r�d�}�}�"� �}� ���� � �#�#�#� �c�U�R�L� �}T�NL�KmՋ � ����b�a�s�h� �#� �G�E�T� ���Bl �c�u�r�l� �-�X� �G�E�T� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�"� � �#� �&^ �H�e�a�d�e�r� ��v��Bl �c�u�r�l� �-�X� �G�E�T� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�"� �\� � � �-�H� �"�A�u�t�h�o�r�i�z�a�t�i�o�n�:� �B�e�a�r�e�r� �T�O�K�E�N�1�2�3�"� �\� � � �-�H� �"�C�o�n�t�e�n�t�-�T�y�p�e�:� �a�p�p�l�i�c�a�t�i�o�n�/�j�s�o�n�"� � �#� �P�O�S�T� ���Bl�c�N �J�S�O�N� �c�u�r�l� �-�X� �P�O�S�T� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�"� �\� � � �-�H� �"�C�o�n�t�e�n�t�-�T�y�p�e�:� �a�p�p�l�i�c�a�t�i�o�n�/�j�s�o�n�"� �\� � � �-�d� �'�{�"�n�a�m�e�"�:�"� _ N"�,�"�e�m�a�i�l�"�:�"�z�h�a�n�g�s�a�n�@�e�x�a�m�p�l�e�.�c�o�m�"�}�'� � �#� �P�O�S�T� ���Bl�c�Nh�US �c�u�r�l� �-�X� �P�O�S�T� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�l�o�g�i�n�"� �\� � � �-�d� �"�u�s�e�r�n�a�m�e�=�a�d�m�i�n�"� �\� � � �-�d� �"�p�a�s�s�w�o�r�d�=�1�2�3�4�5�6�"� � �#� � N O�e�N �c�u�r�l� �-�X� �P�O�S�T� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�p�l�o�a�d�"� �\� � � �-�F� �"�f�i�l�e�=�@�/�p�a�t�h�/�t�o�/�f�i�l�e�.�j�p�g�"� �\� � � �-�F� �"�u�s�e�r�_�i�d�=�1�2�3�"� � �#� ��OX[�T�^0R�e�N �c�u�r�l� �-�o� �r�e�s�p�o�n�s�e�.�j�s�o�n� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�"� � �#� �>f:y��~�Oo �c�u�r�l� �-�v� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�"� � �#� ��S>f:y�T�^4Y �c�u�r�l� �-�I� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�"� � �#� �ߍ��͑�[T �c�u�r�l� �-�L� �"�h�t�t�p�s�:�/�/�e�x�a�m�p�l�e�.�c�o�m�"� � �#� ���n���e �c�u�r�l� �-�-�c�o�n�n�e�c�t�-�t�i�m�e�o�u�t� �5� �-�-�m�a�x�-�t�i�m�e� �1�0� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�"� � �#� �O(u�Nt �c�u�r�l� �-�x� �h�t�t�p�:�/�/�p�r�o�x�y�.�e�x�a�m�p�l�e�.�c�o�m�:�8�0�8�0� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�"� � �#� ��eu �S�S�L� ���fN���� �c�u�r�l� �-�k� �"�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�"� ���� � �#�#� �=� � ��bSR�g � �#�#�#� �C�h�r�o�m�e� �D�e�v�T�o�o�l�s� � ����j�a�v�a�s�c�r�i�p�t� �/�/� �O(u �C�h�r�o�m�e� �D�e�v�T�o�o�l�s� �N�e�t�w�o�r�k� �b�g � �/�/� �1�.� �Sb� �D�e�v�T�o�o�l�s� �(�F�1�2�)� �/�/� �2�.� �Rbc0R �N�e�t�w�o�r�k� �h~{ �/�/� �3�.� �7R�eu�b�b��S��Bl � �/�/� ��g w��Bl��� �/�/� �-� �H�e�a�d�e�r�s�:� ���Bl4Y�T�T�^4Y �/�/� �-� �P�r�e�v�i�e�w�:� �<h_S�v�T�^penc �/�/� �-� �R�e�s�p�o�n�s�e�:� ��S�Y�T�^penc �/�/� �-� �T�i�m�i�n�g�:� ���BlT6��k��e � �/�/� �Ǐ�n��Bl� �/�/� �-� �X�H�R�:� ��S>f:y �A�j�a�x� ���Bl �/�/� �-� �J�S�:� ��S>f:y �J�a�v�a�S�c�r�i�p�t� ��e�N �/�/� �-� �C�S�S�:� ��S>f:y7h_�e�N �/�/� �-� �I�m�g�:� ��S>f:y�VGr � �/�/� �'��R�g� �/�/� �-� �D�O�M�C�o�n�t�e�n�t�L�o�a�d�e�d�:� �D�O�M� ��R}��[b�e���݄�~ � �/�/� �-� �L�o�a�d�:� �u�b��[hQ�R}��e����~�~ � �/�/� �-� �p^�V:� ��g wD��n�R}�z��^�T��e ���� � �#�#�#� �W�i�r�e�s�h�a�r�k� ��bS � �#�#�#�#� ��W@xO(u � ����b�a�s�h� �#� �/T�R �W�i�r�e�s�h�a�r�k� �#� � ��bQ�~�c�S��Y �e�t�h�0� �b �W�i�-�F�i� � �#� ��p�Q��YUc�� � �#� �8^(uǏ�nhV �h�t�t�p� � � � � � � � � � � � � � � � � � � � �#� ��S>f:y �H�T�T�P� �Amϑ �h�t�t�p�.�r�e�q�u�e�s�t�.�m�e�t�h�o�d� �=�=� �"�P�O�S�T�"� � �#� ��S>f:y �P�O�S�T� ���Bl �h�t�t�p�.�r�e�s�p�o�n�s�e�.�c�o�d�e� �=�=� �4�0�4� � � � � � �#� ��S>f:y �4�0�4� ��T�^ � �t�c�p�.�p�o�r�t� �=�=� �8�0� � � � � � � � � � �#� ��S>f:y �8�0� ��z�S�v �T�C�P� �Amϑ �t�c�p�.�p�o�r�t� �=�=� �4�4�3� � � � � � � � � �#� �H�T�T�P�S� �Amϑ � �i�p�.�a�d�d�r� �=�=� �1�9�2�.�1�6�8�.�1�.�1�0�0� � �#� �c�[ �I�P� �0W@W �i�p�.�s�r�c� �=�=� �1�9�2�.�1�6�8�.�1�.�1�0�0� � � �#� ��n �I�P� �i�p�.�d�s�t� �=�=� �1�9�2�.�1�6�8�.�1�.�1�0�0� � � �#� ��vh �I�P� � �#� ��~TǏ�n �h�t�t�p� �&�&� �i�p�.�a�d�d�r� �=�=� �1�9�2�.�1�6�8�.�1�.�1�0�0� �t�c�p�.�p�o�r�t� �=�=� �8�0� �|�|� �t�c�p�.�p�o�r�t� �=�=� �4�4�3� � �#� ��cd�Ǐ�n �!�a�r�p� � �#� ��cd� �A�R�P� �Amϑ �!�(�t�c�p�.�p�o�r�t� �=�=� �2�2�)� � �#� ��cd� �S�S�H� �Amϑ ���� � �#�#�#�#� �R�g �T�C�P� � N!k�cKb � ����b�a�s�h� �#� �Ǐ�nhV:� �t�c�p�.�f�l�a�g�s�.�s�y�n� �=�=� �1� � �#� �‰�[ N!k�cKbǏ z� �#� �1�.� �S�Y�N�:� ��[7b�z �-�>� � g�RhV �(�S�Y�N�=�1�,� �A�C�K�=�0�)� �#� �2�.� �S�Y�N�-�A�C�K�:� � g�RhV �-�>� ��[7b�z �(�S�Y�N�=�1�,� �A�C�K�=�1�)� �#� �3�.� �A�C�K�:� ��[7b�z �-�>� � g�RhV �(�S�Y�N�=�0�,� �A�C�K�=�1�)� � �#� ��S.�pencS �-�>� �F�o�l�l�o�w� �-�>� �T�C�P� �S�t�r�e�a�m� �#� ��S�N w0R�[te�v �T�C�P� �O݋�Q�[ ���� � �#�#�#�#� �R�g �H�T�T�P� ���Bl � ����b�a�s�h� �#� �Ǐ�nhV:� �h�t�t�p�.�r�e�q�u�e�s�t� � �#� ��g w �H�T�T�P� ���Bl��� �#� �-� ���Bl�e�l �(�G�E�T�/�P�O�S�T�/�P�U�T�/�D�E�L�E�T�E�)� �#� �-� ���Bl_ �#� �-� ���Bl4Y �(�U�s�e�r�-�A�g�e�n�t�,� �C�o�o�k�i�e�,� �A�u�t�h�o�r�i�z�a�t�i�o�n�)� �#� �-� ���BlSO �(�P�O�S�T� �penc)� � �#� �Ǐ�nhV:� �h�t�t�p�.�r�e�s�p�o�n�s�e� � �#� ��g w �H�T�T�P� ��T�^��� �#� �-� ��rx �(�2�0�0�,� �4�0�4�,� �5�0�0�)� �#� �-� ��T�^4Y �(�C�o�n�t�e�n�t�-�T�y�p�e�,� �S�e�t�-�C�o�o�k�i�e�)� �#� �-� ��T�^SO �(�H�T�M�L�,� �J�S�O�N�)� ���� � �#�#�#� �C�h�a�r�l�e�s� ��Nt � �#�#�#�#� ��W@xM�n � ����b�a�s�h� �#� �1�.� �/T�R �C�h�a�r�l�e�s� �#� �2�.� �P�r�o�x�y� �-�>� �P�r�o�x�y� �S�e�t�t�i�n�g�s� �#� � � � �-� ��z�S��n:� �8�8�8�8� �#� � � � �-� �/T(u �"�E�n�a�b�l�e� �t�r�a�n�s�p�a�r�e�n�t� �H�T�T�P� �p�r�o�x�y�i�n�g�"� � �#� �3�.� �M�nOmȉhV�Nt �#� � � � �-� �H�T�T�P� �P�r�o�x�y�:� �1�2�7�.�0�.�0�.�1�:�8�8�8�8� �#� � � � �-� �H�T�T�P�S� �P�r�o�x�y�:� �1�2�7�.�0�.�0�.�1�:�8�8�8�8� � �#� �4�.� ��[ň �S�S�L� ���fN �#� � � � �-� �H�e�l�p� �-�>� �S�S�L� �P�r�o�x�y�i�n�g� �-�>� �I�n�s�t�a�l�l� �C�h�a�r�l�e�s� �R�o�o�t� �C�e�r�t�i�f�i�c�a�t�e� �#� � � � �-� ��O�N���fN � �#� �5�.� �/T(u �S�S�L� ��Nt �#� � � � �-� �P�r�o�x�y� �-�>� �S�S�L� �P�r�o�x�y�i�n�g� �S�e�t�t�i�n�g�s� �#� � � � �-� ��m�R:� �*�.�e�x�a�m�p�l�e�.�c�o�m�:�4�4�3� ���� � �#�#�#�#� ��O9e��Bl/��T�^ � ����j�a�v�a�s�c�r�i�p�t� �/�/� �B�r�e�a�k�p�o�i�n�t�s� �(��e�p)� �/�/� ��S.���Bl �-�>� �B�r�e�a�k�p�o�i�n�t�s� �/�/� ��S�N�O9e��Bl4Y0��BlSO0�T�^4Y0�T�^SO � �/�/� �M�a�p� �L�o�c�a�l� �(� f\,g0W�e�N)� �/�/� �T�o�o�l�s� �-�>� �M�a�p� �L�o�c�a�l� �/�/� �\܏ zD��n f\0R,g0W�e�N �KmՋ�O9eT�v�Nx � �/�/� �M�a�p� �R�e�m�o�t�e� �(� f\܏ z0W@W)� �/�/� �T�o�o�l�s� �-�>� �M�a�p� �R�e�m�o�t�e� �/�/� �\�N*N0W@W�v��Bl͑�[T0R�S�N*N0W@W � �/�/� �R�e�w�r�i�t�e� �(�͑�Q)� �/�/� �T�o�o�l�s� �-�>� �R�e�w�r�i�t�e� �/�/� ��m�R/��O9e/� Rd� ���Bl4Y0�T�^4Y0��Bl�Spe � �/�/� �T�h�r�o�t�t�l�i�n�g� �(�P��)� �/�/� �P�r�o�x�y� �-�>� �T�h�r�o�t�t�l�e� �S�e�t�t�i�n�g�s� �/�/� �!j�bba�Q�~�s�X ���� � �#�#� ��& �'��KmՋ � �#�#�#� �A�p�a�c�h�e� �B�e�n�c�h� �(�a�b�)� � ����b�a�s�h� �#� ��W@x�SKm �a�b� �-�n� �1�0�0�0� �-�c� �1�0� �h�t�t�p�:�/�/�e�x�a�m�p�l�e�.�c�o�m�/� �#� �-�n�:� �;��Blpe �#� �-�c�:� �v^�Spe � �#� �P�O�S�T� ���Bl �a�b� �-�n� �1�0�0�0� �-�c� �1�0� �-�p� �d�a�t�a�.�j�s�o�n� �-�T� �a�p�p�l�i�c�a�t�i�o�n�/�j�s�o�n� �h�t�t�p�:�/�/�e�x�a�m�p�l�e�.�c�o�m�/�a�p�i� � �#� �&^���� �a�b� �-�n� �1�0�0�0� �-�c� �1�0� �-�H� �"�A�u�t�h�o�r�i�z�a�t�i�o�n�:� �B�e�a�r�e�r� �T�O�K�E�N�"� �h�t�t�p�:�/�/�e�x�a�m�p�l�e�.�c�o�m�/�a�p�i� � �#� ��~�gR�g �#� �T�i�m�e� �t�a�k�e�n� �f�o�r� �t�e�s�t�s�:� �;��e �#� �R�e�q�u�e�s�t�s� �p�e�r� �s�e�c�o�n�d�:� ��k�y��Blpe �(�Q�P�S�)� �#� �T�i�m�e� �p�e�r� �r�e�q�u�e�s�t�:� �s^GW�T�^�e�� �#� �T�r�a�n�s�f�e�r� �r�a�t�e�:� � O����s �#� �P�e�r�c�e�n�t�a�g�e� �o�f� �r�e�q�u�e�s�t�s�:� ��T�^�e��~vRMO ���� � �#�#�#� �J�M�e�t�e�r� �'��KmՋ � �#�#�#�#� ��W@xKmՋ��R � ����x�m�l� �<�!�-�-� �KmՋ��R�~�g �-�-�>� �T�e�s�t� �P�l�a�n� � � �%�%�% �T�h�r�e�a�d� �G�r�o�u�p� �(��~ z�~)� � � �% � � �%�%�% �N�u�m�b�e�r� �o�f� �T�h�r�e�a�d�s�:� �1�0�0� �(�Z��b(u7bpe)� � � �% � � �%�%�% �R�a�m�p�-�U�p� �P�e�r�i�o�d�:� �1�0� �(�/T�R�e�� ��y)� � � �% � � �%�%�% �L�o�o�p� �C�o�u�n�t�:� �1�0� �(��_�s!kpe)� � � �% � � �% � � �% � � �%�%�% �H�T�T�P� �R�e�q�u�e�s�t� �(�H�T�T�P� ���Bl)� � � �% � � �% � � �%�%�% �S�e�r�v�e�r�:� �a�p�i�.�e�x�a�m�p�l�e�.�c�o�m� � � �% � � �% � � �%�%�% �P�o�r�t�:� �4�4�3� � � �% � � �% � � �%�%�% �P�r�o�t�o�c�o�l�:� �h�t�t�p�s� � � �% � � �% � � �%�%�% �M�e�t�h�o�d�:� �G�E�T� � � �% � � �% � � �%�%�% �P�a�t�h�:� �/�u�s�e�r�s� � � �% � � �% � � �% � � �%�%�% �H�T�T�P� �H�e�a�d�e�r� �M�a�n�a�g�e�r� �(���Bl4Y)� � � �% � � �% � � �%�%�% �A�u�t�h�o�r�i�z�a�t�i�o�n�:� �B�e�a�r�e�r� �$�{�t�o�k�e�n�}� � � �% � � �% � � �%�%�% �C�o�n�t�e�n�t�-�T�y�p�e�:� �a�p�p�l�i�c�a�t�i�o�n�/�j�s�o�n� � � �% � � �% � � �% � � �%�%�% �A�s�s�e�r�t�i�o�n�s� �(��e��)� � � �% � � � � � � �%�%�% �R�e�s�p�o�n�s�e� �C�o�d�e�:� �2�0�0� � � �% � � � � � � �%�%�% �R�e�s�p�o�n�s�e� �T�i�m�e�:� �<� �1�0�0�0�m�s� � � �% � � �%�%�% �L�i�s�t�e�n�e�r�s� �(��v,ThV)� � � �% � � �%�%�% �V�i�e�w� �R�e�s�u�l�t�s� �T�r�e�e� �(��g w�~�gh)� � � �% � � �%�%�% �S�u�m�m�a�r�y� �R�e�p�o�r�t� �(�Z�T�bJT)� � � �% � � �%�%�% �G�r�a�p�h� �R�e�s�u�l�t�s� �(��Vb_�~�g)� � � �% � � �%�%�% �R�e�s�p�o�n�s�e� �T�i�m�e� �G�r�a�p�h� �(��T�^�e���V)� ���� � �#�#�#�#� �O(u�Sϑ�T�SpeS � ����p�r�o�p�e�r�t�i�e�s� �#� �u�s�e�r�s�.�c�s�v� �(�C�S�V� �penc�e�N)� �u�s�e�r�n�a�m�e�,�p�a�s�s�w�o�r�d�,�e�m�a�i�l� �u�s�e�r�1�,�p�a�s�s�1�2�3�,�u�s�e�r�1�@�e�x�a�m�p�l�e�.�c�o�m� �u�s�e�r�2�,�p�a�s�s�4�5�6�,�u�s�e�r�2�@�e�x�a�m�p�l�e�.�c�o�m� �u�s�e�r�3�,�p�a�s�s�7�8�9�,�u�s�e�r�3�@�e�x�a�m�p�l�e�.�c�o�m� � �#� ��m�R �C�S�V� �D�a�t�a� �S�e�t� �C�o�n�f�i�g� �#� �F�i�l�e�n�a�m�e�:� �u�s�e�r�s�.�c�s�v� �#� �V�a�r�i�a�b�l�e� �N�a�m�e�s�:� �u�s�e�r�n�a�m�e�,�p�a�s�s�w�o�r�d�,�e�m�a�i�l� � �#� �(W��Bl-NO(u�Sϑ �#� �$�{�u�s�e�r�n�a�m�e�}� �#� �$�{�p�a�s�s�w�o�r�d�}� �#� �$�{�e�m�a�i�l�}� ���� � �#�#� �<�� �M�o�c�k� �KmՋ � �#�#�#� �M�o�c�k� �S�e�r�v�e�r� �(�O(u �j�s�o�n�-�s�e�r�v�e�r�)� � ����b�a�s�h� �#� ��[ň �j�s�o�n�-�s�e�r�v�e�r� �n�p�m� �i�n�s�t�a�l�l� �-�g� �j�s�o�n�-�s�e�r�v�e�r� � �#� �R�^ �d�b�.�j�s�o�n� �c�a�t� �>� �d�b�.�j�s�o�n� �<�<� �E�O�F� �{� � � �"�u�s�e�r�s�"�:� �[� � � � � �{� �"�i�d�"�:� �1�,� �"�n�a�m�e�"�:� �"� _ N"�,� �"�e�m�a�i�l�"�:� �"�z�h�a�n�g�s�a�n�@�e�x�a�m�p�l�e�.�c�o�m�"� �}�,� � � � � �{� �"�i�d�"�:� �2�,� �"�n�a�m�e�"�:� �"�Ng�V"�,� �"�e�m�a�i�l�"�:� �"�l�i�s�i�@�e�x�a�m�p�l�e�.�c�o�m�"� �}� � � �]�,� � � �"�p�o�s�t�s�"�:� �[� � � � � �{� �"�i�d�"�:� �1�,� �"�t�i�t�l�e�"�:� �"��e�z1�"�,� �"�u�s�e�r�I�d�"�:� �1� �}�,� � � � � �{� �"�i�d�"�:� �2�,� �"�t�i�t�l�e�"�:� �"��e�z2�"�,� �"�u�s�e�r�I�d�"�:� �2� �}� � � �]� �}� �E�O�F� � �#� �/T�R �M�o�c�k� � g�RhV �j�s�o�n�-�s�e�r�v�e�r� �-�-�w�a�t�c�h� �d�b�.�j�s�o�n� �-�-�p�o�r�t� �3�0�0�0� � �#� ��s(W�S�N���� �#� �G�E�T� � � � �/�u�s�e�r�s� � � � � � � � � � �#� ����S@b g(u7b �#� �G�E�T� � � � �/�u�s�e�r�s�/�1� � � � � � � � �#� ����SUS*N(u7b �#� �P�O�S�T� � � �/�u�s�e�r�s� � � � � � � � � � �#� �R�^(u7b �#� �P�U�T� � � � �/�u�s�e�r�s�/�1� � � � � � � � �#� ��f�e(u7b �#� �D�E�L�E�T�E� �/�u�s�e�r�s�/�1� � � � � � � � �#� � Rd�(u7b �#� �G�E�T� � � � �/�u�s�e�r�s�?�n�a�m�e�=� _ N �#� �Ǐ�n�g� ���� � �#�#�#� �O(u �P�o�s�t�m�a�n� �M�o�c�k� �S�e�r�v�e�r� � ����j�a�v�a�s�c�r�i�p�t� �/�/� �1�.� �(W �P�o�s�t�m�a�n� �-NR�^ �C�o�l�l�e�c�t�i�o�n� �/�/� �2�.� ��p�Q �"�M�o�c�k� �S�e�r�v�e�r�s�"� �-�>� �"�C�r�e�a�t�e� �M�o�c�k� �S�e�r�v�e�r�"� �/�/� �3�.� �:N�k*N��Bl�m�R �E�x�a�m�p�l�e� � �/�/� �E�x�a�m�p�l�e� ��T�^:y�O� �{� � � �"�s�u�c�c�e�s�s�"�:� �t�r�u�e�,� � � �"�d�a�t�a�"�:� �[� � � � � �{� � � � � � � �"�i�d�"�:� �1�,� � � � � � � �"�n�a�m�e�"�:� �"� _ N"�,� � � � � � � �"�e�m�a�i�l�"�:� �"�z�h�a�n�g�s�a�n�@�e�x�a�m�p�l�e�.�c�o�m�"� � � � � �}� � � �]� �}� � �/�/� �O(u �M�o�c�k� �S�e�r�v�e�r� �U�R�L� �/�/� �h�t�t�p�s�:�/�/�x�x�x�x�x�.�m�o�c�k�.�p�s�t�m�n�.�i�o�/�u�s�e�r�s� ���� � �#�#� �=�'� �Q�~_8^KmՋ � �#�#�#� �1_Q!j�b � �#�#�#�#� �C�h�r�o�m�e� �D�e�v�T�o�o�l�s� �Q�~P�� � ����j�a�v�a�s�c�r�i�p�t� �/�/� �1�.� �Sb�_ �D�e�v�T�o�o�l�s� �(�F�1�2�)� �/�/� �2�.� �Rbc0R �N�e�t�w�o�r�k� �h~{ �/�/� �3�.� ��p�Q �"�N�o� �t�h�r�o�t�t�l�i�n�g�"� � N�b܃US � �/�/� ����� �y�� �/�/� �-� �F�a�s�t� �3�G�:� �1�.�5�M�b�p�s� � N}�,� �7�5�0�K�b�p�s� � N O,� �1�0�0�m�s� ��^ߏ �/�/� �-� �S�l�o�w� �3�G�:� �5�0�0�K�b�p�s� � N}�,� �5�0�0�K�b�p�s� � N O,� �4�0�0�m�s� ��^ߏ �/�/� �-� �O�f�f�l�i�n�e�:� �!j�b�y�~ � �/�/� �ꁚ[INQ�~ag�N� �/�/� �-� �D�o�w�n�l�o�a�d�:� � N}���^ �/�/� �-� �U�p�l�o�a�d�:� � N O��^ �/�/� �-� �L�a�t�e�n�c�y�:� ��^ߏ�e�� ���� � �#�#�#�#� �L�i�n�u�x� �Q�~P�� �(�t�c� �}T�N)� � ����b�a�s�h� �#� ��m�R�^ߏ �(�1�0�0�m�s�)� �s�u�d�o� �t�c� �q�d�i�s�c� �a�d�d� �d�e�v� �e�t�h�0� �r�o�o�t� �n�e�t�e�m� �d�e�l�a�y� �1�0�0�m�s� � �#� ��m�R�^ߏ�l�R �s�u�d�o� �t�c� �q�d�i�s�c� �a�d�d� �d�e�v� �e�t�h�0� �r�o�o�t� �n�e�t�e�m� �d�e�l�a�y� �1�0�0�m�s� �2�0�m�s� � �#� ��m�R"NS�s �(�1�0�%�)� �s�u�d�o� �t�c� �q�d�i�s�c� �a�d�d� �d�e�v� �e�t�h�0� �r�o�o�t� �n�e�t�e�m� �l�o�s�s� �1�0�%� � �#� �P�6R&^�[ �(�1�M�b�p�s�)� �s�u�d�o� �t�c� �q�d�i�s�c� �a�d�d� �d�e�v� �e�t�h�0� �r�o�o�t� �t�b�f� �r�a�t�e� �1�m�b�i�t� �b�u�r�s�t� �3�2�k�b�i�t� �l�a�t�e�n�c�y� �4�0�0�m�s� � �#� ��~Tag�N �s�u�d�o� �t�c� �q�d�i�s�c� �a�d�d� �d�e�v� �e�t�h�0� �r�o�o�t� �n�e�t�e�m� �d�e�l�a�y� �1�0�0�m�s� �l�o�s�s� �5�%� �r�a�t�e� �1�m�b�i�t� � �#� ��g wS_MR��n �s�u�d�o� �t�c� �q�d�i�s�c� �s�h�o�w� �d�e�v� �e�t�h�0� � �#� � Rd�P�6R �s�u�d�o� �t�c� �q�d�i�s�c� �d�e�l� �d�e�v� �e�t�h�0� �r�o�o�t� ���� � �#�#�#� ����eKmՋ � ����j�a�v�a�s�c�r�i�p�t� �/�/� �KmՋޏ�c���e �f�e�t�c�h�(�'�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�'�,� �{� � � �s�i�g�n�a�l�:� �A�b�o�r�t�S�i�g�n�a�l�.�t�i�m�e�o�u�t�(�5�0�0�0�)� � �/�/� �5��y���e �}�)� � � �.�t�h�e�n�(�r�e�s�p�o�n�s�e� �=�>� �r�e�s�p�o�n�s�e�.�j�s�o�n�(�)�)� � � �.�c�a�t�c�h�(�e�r�r�o�r� �=�>� �{� � � � � �i�f� �(�e�r�r�o�r�.�n�a�m�e� �=�=�=� �'�T�i�m�e�o�u�t�E�r�r�o�r�'�)� �{� � � � � � � �c�o�n�s�o�l�e�.�l�o�g�(�'���Bl���e'�)�;� � � � � �}� � � �}�)�;� � �/�/� �Kb�R�[�s���e �c�o�n�s�t� �t�i�m�e�o�u�t� �=� �(�m�s�)� �=�>� �n�e�w� �P�r�o�m�i�s�e�(�(�_�,� �r�e�j�e�c�t�)� �=�>� � � � �s�e�t�T�i�m�e�o�u�t�(�(�)� �=�>� �r�e�j�e�c�t�(�n�e�w� �E�r�r�o�r�(�'�T�i�m�e�o�u�t�'�)�)�,� �m�s�)� �)�;� � �P�r�o�m�i�s�e�.�r�a�c�e�(�[� � � �f�e�t�c�h�(�'�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�/�u�s�e�r�s�'�)�,� � � �t�i�m�e�o�u�t�(�5�0�0�0�)� �]�)� � � �.�t�h�e�n�(�r�e�s�p�o�n�s�e� �=�>� �r�e�s�p�o�n�s�e�.�j�s�o�n�(�)�)� � � �.�c�a�t�c�h�(�e�r�r�o�r� �=�>� �c�o�n�s�o�l�e�.�e�r�r�o�r�(�'���Bl1Y%�:�'�,� �e�r�r�o�r�)�)�;� ���� � �#�#�#� ���:WofKmՋ � ����b�a�s�h� �#� �KmՋ �D�N�S� �㉐g1Y%� �c�u�r�l� �h�t�t�p�:�/�/�n�o�n�e�x�i�s�t�e�n�t�-�d�o�m�a�i�n�-�1�2�3�4�5�.�c�o�m� � �#� �KmՋޏ�c���b�~ �c�u�r�l� �h�t�t�p�:�/�/�l�o�c�a�l�h�o�s�t�:�9�9�9�9� � �#� �KmՋ �S�S�L� ���fN�� �c�u�r�l� �h�t�t�p�s�:�/�/�s�e�l�f�-�s�i�g�n�e�d�.�b�a�d�s�s�l�.�c�o�m�/� � �#� �KmՋT�y �H�T�T�P� ��rx �c�u�r�l� �h�t�t�p�s�:�/�/�h�t�t�p�s�t�a�t�.�u�s�/�2�0�0� � �#� �b�R �c�u�r�l� �h�t�t�p�s�:�/�/�h�t�t�p�s�t�a�t�.�u�s�/�4�0�0� � �#� �����Bl �c�u�r�l� �h�t�t�p�s�:�/�/�h�t�t�p�s�t�a�t�.�u�s�/�4�0�1� � �#� �g�cCg �c�u�r�l� �h�t�t�p�s�:�/�/�h�t�t�p�s�t�a�t�.�u�s�/�4�0�4� � �#� �g~b0R �c�u�r�l� �h�t�t�p�s�:�/�/�h�t�t�p�s�t�a�t�.�u�s�/�5�0�0� � �#� � g�RhV�� �c�u�r�l� �h�t�t�p�s�:�/�/�h�t�t�p�s�t�a�t�.�u�s�/�5�0�3� � �#� � g�R N�S(u � �#� �KmՋ���e �c�u�r�l� �-�-�m�a�x�-�t�i�m�e� �1� �h�t�t�p�s�:�/�/�h�t�t�p�s�t�a�t�.�u�s�/�2�0�0�?�s�l�e�e�p�=�5�0�0�0� ���� � �#�#� �=��� �KmՋ�bJT � �#�#�#� �'��KmՋ�bJT!jg � ����m�a�r�k�d�o�w�n� �#� �'��KmՋ�bJT � �#�#� �KmՋ�s�X �-� �KmՋ�e��:� �2�0�2�4�-�0�1�-�0�1� �1�0�:�0�0�:�0�0� �-� �KmՋ�]wQ:� �J�M�e�t�e�r� �5�.�5� �-� � g�RhV:� �4�8h8�G�,� �U�b�u�n�t�u� �2�2�.�0�4� �-� �penc�^:� �M�y�S�Q�L� �8�.�0� � �#�#� �KmՋ:Wof � �#�#�#� �:Wof1�:� �(u7bRh��g� �-� ��c�S:� �G�E�T� �/�a�p�i�/�u�s�e�r�s� �-� �v^�Spe:� �1�0�0� �-� �c�~�e��:� �5�R�� �-� ��vh:� �Q�P�S� �>� �1�0�0�0�,� ��T�^�e�� �<� �2�0�0�m�s� � �#�#� �KmՋ�~�g � �|� �ch �|� �<P �|� ��vh �|� �/f&T��h �|� �|�-�-�-�-�-�-�|�-�-�-�-�-�|�-�-�-�-�-�-�|�-�-�-�-�-�-�-�-�-�-�|� �|� �;��Blpe �|� �5�0�0�0�0� �|� �-� �|� �-� �|� �|� �b�R�s �|� �9�9�.�8�%� �|� �>� �9�9�%� �|� �' �|� �|� �Q�P�S� �|� �1�1�6�7� �|� �>� �1�0�0�0� �|� �' �|� �|� �s^GW�T�^�e�� �|� �8�5�m�s� �|� �<� �2�0�0�m�s� �|� �' �|� �|� �9�5�%��T�^�e�� �|� �1�5�6�m�s� �|� �<� �3�0�0�m�s� �|� �' �|� �|� �9�9�%��T�^�e�� �|� �2�3�4�m�s� �|� �<� �5�0�0�m�s� �|� �' �|� �|� ��g'Y�T�^�e�� �|� �5�6�7�m�s� �|� �-� �|� �-� �|� � �#�#� �'���t�� � �1�.� �penc�^�g⋃�ba �(�s^GW �5�0�m�s�)� �2�.� �Q�~�^ߏ �(�s^GW �1�5�m�s�)� � �#�#� �OS�^�� � �1�.� ��m�Rpenc�^"}_ �2�.� �/T(u�g�X[ �3�.� �O(u �C�D�N� ��R�Y�D��n ���� � �#�#�#� �ꁨRSKmՋ�,g � ����j�a�v�a�s�c�r�i�p�t� �/�/� �t�e�s�t�-�a�p�i�.�j�s� �c�o�n�s�t� �a�x�i�o�s� �=� �r�e�q�u�i�r�e�(�'�a�x�i�o�s�'�)�;� � �c�o�n�s�t� �B�A�S�E�_�U�R�L� �=� �'�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�'�;� �c�o�n�s�t� �r�e�s�u�l�t�s� �=� �[�]�;� � �/�/� �KmՋ(u�O �c�o�n�s�t� �t�e�s�t�C�a�s�e�s� �=� �[� � � �{� � � � � �n�a�m�e�:� �'����S(u7bRh�'�,� � � � � �m�e�t�h�o�d�:� �'�G�E�T�'�,� � � � � �u�r�l�:� �'�/�u�s�e�r�s�'�,� � � � � �e�x�p�e�c�t�e�d�S�t�a�t�u�s�:� �2�0�0�,� � � � � �v�a�l�i�d�a�t�e�R�e�s�p�o�n�s�e�:� �(�d�a�t�a�)� �=�>� �A�r�r�a�y�.�i�s�A�r�r�a�y�(�d�a�t�a�.�d�a�t�a�)� � � �}�,� � � �{� � � � � �n�a�m�e�:� �'�R�^(u7b'�,� � � � � �m�e�t�h�o�d�:� �'�P�O�S�T�'�,� � � � � �u�r�l�:� �'�/�u�s�e�r�s�'�,� � � � � �d�a�t�a�:� �{� �n�a�m�e�:� �'�KmՋ(u7b'�,� �e�m�a�i�l�:� �'�t�e�s�t�@�e�x�a�m�p�l�e�.�c�o�m�'� �}�,� � � � � �e�x�p�e�c�t�e�d�S�t�a�t�u�s�:� �2�0�1�,� � � � � �v�a�l�i�d�a�t�e�R�e�s�p�o�n�s�e�:� �(�d�a�t�a�)� �=�>� �d�a�t�a�.�s�u�c�c�e�s�s� �=�=�=� �t�r�u�e� � � �}�,� � � �{� � � � � �n�a�m�e�:� �'����S NX[(W�v(u7b'�,� � � � � �m�e�t�h�o�d�:� �'�G�E�T�'�,� � � � � �u�r�l�:� �'�/�u�s�e�r�s�/�9�9�9�9�9�'�,� � � � � �e�x�p�e�c�t�e�d�S�t�a�t�u�s�:� �4�0�4� � � �}� �]�;� � �/�/� �ЏL�KmՋ �a�s�y�n�c� �f�u�n�c�t�i�o�n� �r�u�n�T�e�s�t�s�(�)� �{� � � �c�o�n�s�o�l�e�.�l�o�g�(�'��_�YKmՋ.�.�.�\�n�'�)�;� � � � � � �f�o�r� �(�c�o�n�s�t� �t�e�s�t�C�a�s�e� �o�f� �t�e�s�t�C�a�s�e�s�)� �{� � � � � �t�r�y� �{� � � � � � � �c�o�n�s�t� �s�t�a�r�t�T�i�m�e� �=� �D�a�t�e�.�n�o�w�(�)�;� � � � � � � � � � � � � � �c�o�n�s�t� �r�e�s�p�o�n�s�e� �=� �a�w�a�i�t� �a�x�i�o�s�(�{� � � � � � � � � �m�e�t�h�o�d�:� �t�e�s�t�C�a�s�e�.�m�e�t�h�o�d�,� � � � � � � � � �u�r�l�:� �B�A�S�E�_�U�R�L� �+� �t�e�s�t�C�a�s�e�.�u�r�l�,� � � � � � � � � �d�a�t�a�:� �t�e�s�t�C�a�s�e�.�d�a�t�a� � � � � � � �}�)�;� � � � � � � � � � � � � � �c�o�n�s�t� �d�u�r�a�t�i�o�n� �=� �D�a�t�e�.�n�o�w�(�)� �-� �s�t�a�r�t�T�i�m�e�;� � � � � � � � � � � � � � �/�/� ������rx � � � � � � �c�o�n�s�t� �s�t�a�t�u�s�M�a�t�c�h� �=� �r�e�s�p�o�n�s�e�.�s�t�a�t�u�s� �=�=�=� �t�e�s�t�C�a�s�e�.�e�x�p�e�c�t�e�d�S�t�a�t�u�s�;� � � � � � � � � � � � � � �/�/� ������T�^�Q�[ � � � � � � �l�e�t� �r�e�s�p�o�n�s�e�V�a�l�i�d� �=� �t�r�u�e�;� � � � � � � �i�f� �(�t�e�s�t�C�a�s�e�.�v�a�l�i�d�a�t�e�R�e�s�p�o�n�s�e�)� �{� � � � � � � � � �r�e�s�p�o�n�s�e�V�a�l�i�d� �=� �t�e�s�t�C�a�s�e�.�v�a�l�i�d�a�t�e�R�e�s�p�o�n�s�e�(�r�e�s�p�o�n�s�e�.�d�a�t�a�)�;� � � � � � � �}� � � � � � � � � � � � � � �c�o�n�s�t� �p�a�s�s�e�d� �=� �s�t�a�t�u�s�M�a�t�c�h� �&�&� �r�e�s�p�o�n�s�e�V�a�l�i�d�;� � � � � � � � � � � � � � �r�e�s�u�l�t�s�.�p�u�s�h�(�{� � � � � � � � � �n�a�m�e�:� �t�e�s�t�C�a�s�e�.�n�a�m�e�,� � � � � � � � � �p�a�s�s�e�d�,� � � � � � � � � �d�u�r�a�t�i�o�n�,� � � � � � � � � �s�t�a�t�u�s�:� �r�e�s�p�o�n�s�e�.�s�t�a�t�u�s�,� � � � � � � � � �m�e�s�s�a�g�e�:� �p�a�s�s�e�d� �?� �'�' ��Ǐ'� �:� �'�L' �1Y%�'� � � � � � � �}�)�;� � � � � � � � � � � � � � �c�o�n�s�o�l�e�.�l�o�g�(��$�{�t�e�s�t�C�a�s�e�.�n�a�m�e�}�:� �$�{�r�e�s�u�l�t�s�[�r�e�s�u�l�t�s�.�l�e�n�g�t�h� �-� �1�]�.�m�e�s�s�a�g�e�}� �(�$�{�d�u�r�a�t�i�o�n�}�m�s�)��)�;� � � � � � � � � � � � �}� �c�a�t�c�h� �(�e�r�r�o�r�)� �{� � � � � � � �c�o�n�s�t� �e�x�p�e�c�t�e�d�E�r�r�o�r� �=� �e�r�r�o�r�.�r�e�s�p�o�n�s�e�?�.�s�t�a�t�u�s� �=�=�=� �t�e�s�t�C�a�s�e�.�e�x�p�e�c�t�e�d�S�t�a�t�u�s�;� � � � � � � � � � � � � � �r�e�s�u�l�t�s�.�p�u�s�h�(�{� � � � � � � � � �n�a�m�e�:� �t�e�s�t�C�a�s�e�.�n�a�m�e�,� � � � � � � � � �p�a�s�s�e�d�:� �e�x�p�e�c�t�e�d�E�r�r�o�r�,� � � � � � � � � �s�t�a�t�u�s�:� �e�r�r�o�r�.�r�e�s�p�o�n�s�e�?�.�s�t�a�t�u�s� �|�|� �'�E�r�r�o�r�'�,� � � � � � � � � �m�e�s�s�a�g�e�:� �e�x�p�e�c�t�e�d�E�r�r�o�r� �?� �'�' ��Ǐ'� �:� �'�L' �1Y%�'�,� � � � � � � � � �e�r�r�o�r�:� �e�r�r�o�r�.�m�e�s�s�a�g�e� � � � � � � �}�)�;� � � � � � � � � � � � � � �c�o�n�s�o�l�e�.�l�o�g�(��$�{�t�e�s�t�C�a�s�e�.�n�a�m�e�}�:� �$�{�r�e�s�u�l�t�s�[�r�e�s�u�l�t�s�.�l�e�n�g�t�h� �-� �1�]�.�m�e�s�s�a�g�e�}��)�;� � � � � �}� � � �}� � � � � � �/�/� ����QGl; � � �c�o�n�s�o�l�e�.�l�o�g�(�'�\�n�=�=�=� �KmՋGl; �=�=�=�'�)�;� � � �c�o�n�s�t� �p�a�s�s�e�d� �=� �r�e�s�u�l�t�s�.�f�i�l�t�e�r�(�r� �=�>� �r�.�p�a�s�s�e�d�)�.�l�e�n�g�t�h�;� � � �c�o�n�s�t� �t�o�t�a�l� �=� �r�e�s�u�l�t�s�.�l�e�n�g�t�h�;� � � �c�o�n�s�o�l�e�.�l�o�g�(���Ǐ:� �$�{�p�a�s�s�e�d�}�/�$�{�t�o�t�a�l�}��)�;� � � �c�o�n�s�o�l�e�.�l�o�g�(��b�R�s:� �$�{�(�p�a�s�s�e�d� �/� �t�o�t�a�l� �*� �1�0�0�)�.�t�o�F�i�x�e�d�(�2�)�}�%��)�;� �}� � �r�u�n�T�e�s�t�s�(�)�;� ���� � �#�#� �=ء� ��gsO�[�� � �#�#�#� �1�.� �KmՋ(u�O���� � ����j�a�v�a�s�c�r�i�p�t� �/�/� ���Lu<PKmՋ �c�o�n�s�t� �t�e�s�t�C�a�s�e�s� �=� �[� � � �{� �i�n�p�u�t�:� �-�1�,� �e�x�p�e�c�t�e�d�:� �'�e�r�r�o�r�'� �}�,� � � � �/�/� ��pe � � �{� �i�n�p�u�t�:� �0�,� �e�x�p�e�c�t�e�d�:� �'�e�r�r�o�r�'� �}�,� � � � � �/�/� ��� � � �{� �i�n�p�u�t�:� �1�,� �e�x�p�e�c�t�e�d�:� �'�s�u�c�c�e�s�s�'� �}�,� � � �/�/� ��g\ckpe � � �{� �i�n�p�u�t�:� �1�0�0�,� �e�x�p�e�c�t�e�d�:� �'�s�u�c�c�e�s�s�'� �}�,� �/�/� �ck8^<P � � �{� �i�n�p�u�t�:� �9�9�9�,� �e�x�p�e�c�t�e�d�:� �'�s�u�c�c�e�s�s�'� �}�,� �/�/� ��g'Y<P � � �{� �i�n�p�u�t�:� �1�0�0�0�,� �e�x�p�e�c�t�e�d�:� �'�e�r�r�o�r�'� �}� � � �/�/� ���Ǐ�g'Y<P �]�;� � �/�/� �_8^��QKmՋ �c�o�n�s�t� �e�r�r�o�r�T�e�s�t�C�a�s�e�s� �=� �[� � � �{� �d�e�s�c�:� �'�:\�_kX�Spe'�,� �d�a�t�a�:� �{�}� �}�,� � � �{� �d�e�s�c�:� �'��Spe{|�W��'�,� �d�a�t�a�:� �{� �i�d�:� �'�a�b�c�'� �}� �}�,� � � �{� �d�e�s�c�:� �'��Spe<h_��'�,� �d�a�t�a�:� �{� �e�m�a�i�l�:� �'�i�n�v�a�l�i�d�'� �}� �}�,� � � �{� �d�e�s�c�:� �'���BlSOǏ'Y'�,� �d�a�t�a�:� �'�x�'�.�r�e�p�e�a�t�(�1�0�0�0�0�0�0�0�)� �}� �]�;� ���� � �#�#�#� �2�.� �KmՋ�s�X���y � ����j�a�v�a�s�c�r�i�p�t� �/�/� �M�n N T�s�X �c�o�n�s�t� �e�n�v�i�r�o�n�m�e�n�t�s� �=� �{� � � �d�e�v�:� �{� � � � � �b�a�s�e�U�R�L�:� �'�h�t�t�p�:�/�/�l�o�c�a�l�h�o�s�t�:�3�0�0�0�'�,� � � � � �t�i�m�e�o�u�t�:� �1�0�0�0�0� � � �}�,� � � �t�e�s�t�:� �{� � � � � �b�a�s�e�U�R�L�:� �'�h�t�t�p�s�:�/�/�t�e�s�t�-�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�'�,� � � � � �t�i�m�e�o�u�t�:� �5�0�0�0� � � �}�,� � � �p�r�o�d�:� �{� � � � � �b�a�s�e�U�R�L�:� �'�h�t�t�p�s�:�/�/�a�p�i�.�e�x�a�m�p�l�e�.�c�o�m�'�,� � � � � �t�i�m�e�o�u�t�:� �3�0�0�0� � � �}� �}�;� � �c�o�n�s�t� �e�n�v� �=� �p�r�o�c�e�s�s�.�e�n�v�.�N�O�D�E�_�E�N�V� �|�|� �'�d�e�v�'�;� �c�o�n�s�t� �c�o�n�f�i�g� �=� �e�n�v�i�r�o�n�m�e�n�t�s�[�e�n�v�]�;� � �c�o�n�s�t� �a�p�i� �=� �a�x�i�o�s�.�c�r�e�a�t�e�(�c�o�n�f�i�g�)�;� ���� � �#�#�#� �3�.� �c�~Ɩb � ����y�a�m�l� �#� �.�g�i�t�h�u�b�/�w�o�r�k�f�l�o�w�s�/�a�p�i�-�t�e�s�t�.�y�m�l� �n�a�m�e�:� �A�P�I� �T�e�s�t�s� � �o�n�:� �[�p�u�s�h�,� �p�u�l�l�_�r�e�q�u�e�s�t�]� � �j�o�b�s�:� � � �t�e�s�t�:� � � � � �r�u�n�s�-�o�n�:� �u�b�u�n�t�u�-�l�a�t�e�s�t� � � � � � � � � � �s�t�e�p�s�:� � � � � � � �-� �u�s�e�s�:� �a�c�t�i�o�n�s�/�c�h�e�c�k�o�u�t�@�v�2� � � � � � � � � � � � � � �-� �n�a�m�e�:� �S�e�t�u�p� �N�o�d�e�.�j�s� � � � � � � � � �u�s�e�s�:� �a�c�t�i�o�n�s�/�s�e�t�u�p�-�n�o�d�e�@�v�2� � � � � � � � � �w�i�t�h�:� � � � � � � � � � � �n�o�d�e�-�v�e�r�s�i�o�n�:� �'�1�6�'� � � � � � � � � � � � � � �-� �n�a�m�e�:� �I�n�s�t�a�l�l� �d�e�p�e�n�d�e�n�c�i�e�s� � � � � � � � � �r�u�n�:� �n�p�m� �i�n�s�t�a�l�l� � � � � � � � � � � � � � �-� �n�a�m�e�:� �R�u�n� �t�e�s�t�s� � � � � � � � � �r�u�n�:� �n�p�m� �t�e�s�t� � � � � � � � � � � � � � �-� �n�a�m�e�:� �U�p�l�o�a�d� �t�e�s�t� �r�e�s�u�l�t�s� � � � � � � � � �i�f�:� �a�l�w�a�y�s�(�)� � � � � � � � � �u�s�e�s�:� �a�c�t�i�o�n�s�/�u�p�l�o�a�d�-�a�r�t�i�f�a�c�t�@�v�2� � � � � � � � � �w�i�t�h�:� � � � � � � � � � � �n�a�m�e�:� �t�e�s�t�-�r�e�s�u�l�t�s� � � � � � � � � � � �p�a�t�h�:� �t�e�s�t�-�r�e�s�u�l�t�s�/� ���� � �#�#� �=��� �\�~ � �ُ�N�zb�Nf[N�N� � �' �*�*��c�SKmՋ�]wQ*�*��P�o�s�t�m�a�n�0c�U�R�L�0ꁨRS�,g � � �' �*�*��bSR�g*�*��C�h�r�o�m�e� �D�e�v�T�o�o�l�s�0W�i�r�e�s�h�a�r�k�0C�h�a�r�l�e�s� � � �' �*�*�'��KmՋ���a�b�0J�M�e�t�e�r�0�S�RKmՋ � � �' ���M�o�c�k� �KmՋ*���M�o�c�k� �S�e�r�v�e�r�0penc!j�b � � �' ���_8^KmՋ���1_Q!j�b0���eKmՋ0��:Wof � � �' ���KmՋ�bJT�*���~�gR�g0ꁨRSKmՋ � �#�#� �<د� � N�Nek � ��gT�N�z �f[N�YUO�c�g�T㉳Q8^���vQ�~�� � �[��~�~f[N,{5��z�Q�~��c�g ��!]�(�/�p�r�a�c�t�i�c�e�/�0�5�-�t�r�o�u�b�l�e�s�h�o�o�t�i�n�g�)� �

最近更新: 2025/12/26 18:23
Contributors: 王长安
Prev
第3章 - 运维与 DevOps
Next
第5章 - 网络故障排查