หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
บทความนี้อธิบายรายละเอียดเกี่ยวกับการจัดการข้อผิดพลาดและการแก้ไขปัญหาแอปพลิเคชันของคุณ
เคล็ดลับ
เมื่อคุณสร้างข้อความคําขอ SOAP ตรวจสอบให้แน่ใจว่าองค์ประกอบอยู่ในลําดับเดียวกับที่กําหนดไว้ในภาษาคําอธิบายบริการเว็บ (WSDL) ถ้าองค์ประกอบที่จําเป็นไม่เป็นลําดับ การเรียกใช้จะล้มเหลว ถ้าองค์ประกอบที่เลือกได้ไม่เป็นลําดับ การเรียกใช้อาจล้มเหลวหรือองค์ประกอบจะถูกละเว้น สําหรับรายละเอียดเพิ่มเติม ดูลําดับองค์ประกอบ SOAP XML
ข้อผิดพลาดทั่วไปเกี่ยวกับ API
ต่อไปนี้เป็นเคล็ดลับบางอย่างในการจัดการข้อผิดพลาดของบริการทั่วไปที่คุณอาจพบ สําหรับรายการที่ครอบคลุมของรหัสข้อผิดพลาด Bing Ads API โปรดดู รหัสข้อผิดพลาดของการดําเนินการ
รหัส 105
โดยทั่วไปจะระบุการใช้งานของโทเค็นการเข้าถึงที่ไม่ถูกต้อง (องค์ประกอบส่วนหัว AuthenticationToken) หรือโทเค็นนักพัฒนาสําหรับสภาพแวดล้อมเป้าหมาย ตัวอย่างเช่น ข้อมูลประจําตัวของคุณอาจถูกต้องในการผลิต อย่างไรก็ตาม เมื่อกําหนดเป้าหมาย Sandbox คุณจะต้องสังเกตโค้ด 105
รหัส 106
โดยทั่วไปจะระบุว่าในขณะที่ข้อมูลประจําตัวถูกต้องสําหรับสภาพแวดล้อมเป้าหมาย ผู้ใช้ไม่สามารถเข้าถึงหนึ่งในเอนทิตีที่ระบุในคําขอได้ ตัวอย่างเช่น คุณจะสังเกตเห็นข้อผิดพลาดนี้เรียกใช้ SubmitGenerateReportRequest ถ้าผู้ใช้ไม่มีสิทธิ์ไปยังบัญชีที่ระบุ
รหัส 117
หากคุณเกินขีดจํากัดการเรียกบริการ คุณจะเห็นข้อผิดพลาดต่อไปนี้:
- รหัสข้อผิดพลาดของตัวเลข: 117
- รหัสข้อผิดพลาดที่เป็นสัญลักษณ์: CallRateExceeded
- ข้อความ: คุณได้โทรเกินจํานวนที่คุณได้รับอนุญาตให้โทรในหนึ่งนาที โปรดลดจํานวนการโทรที่คุณโทรต่อนาที
เมื่อคุณสังเกตข้อผิดพลาดนี้ คุณสามารถส่งคําขอใหม่ภายใต้ขีดจํากัดหลังจากรอ 60 วินาที
ข้อผิดพลาดภายใน
ในบางครั้ง บริการอาจส่งกลับข้อผิดพลาดภายในดังนี้:
<OperationError>
<Code>0</Code>
<Details i:nil="true"/>
<ErrorCode>InternalError</ErrorCode>
<Message>An internal error has occurred.</Message>
</OperationError>
ต่อไปนี้เป็นสถานการณ์ข้อผิดพลาดภายในที่เป็นไปได้บางอย่าง:
- นี่เป็นปัญหาของระบบชั่วคราว และไม่มีการดําเนินการใดที่คุณสามารถทําได้ ถ้าเคยใช้ได้ผลกับคุณมาก่อน โปรดลองอีกครั้งในภายหลังในกรณีที่เราได้แก้ไขปัญหาด้านเซิร์ฟเวอร์
- การดําเนินการไม่ได้ถูกแมปอย่างถูกต้องไปยังรหัสข้อผิดพลาดที่สามารถดําเนินการได้ ตามหลักแล้วหากมีสิ่งใดที่ไคลเอ็นต์สามารถทําได้เพื่อแก้ไขปัญหา Bing Ads API ควรส่งกลับรหัสข้อผิดพลาดที่สามารถดําเนินการได้ หากคุณพบข้อผิดพลาดภายในอย่างต่อเนื่อง โปรดติดต่อฝ่ายสนับสนุน พร้อมรายละเอียด
HTTP 500
การดําเนินการบริการ API ทั้งหมด Bing Ads เป็นไปตามข้อกําหนด Simple Object Access Protocol (SOAP) 1.1 โดยจะส่งกลับข้อผิดพลาดด้วยรหัส HTTP 500 ตัวอย่างเช่น ดูรายการต่อไปนี้
HTTP/1.1 500 Internal Server Error
นี่ไม่ได้อยู่ในและเป็นตัวแทนของรหัสที่สามารถดําเนินการได้และคุณควรตรวจสอบรายละเอียดข้อบกพร่องสําหรับข้อมูลเพิ่มเติมเกี่ยวกับข้อผิดพลาดเฉพาะ
ไม่สามารถสร้างคลาสนามธรรมได้
คุณไม่สามารถสร้างอินสแตนซ์ของระดับชั้นฐานเช่น โฆษณา คุณต้องสร้างอินสแตนซ์หนึ่งในคลาสที่ได้รับมา เช่น ExpandedTextAd
เหตุใดฉันจึงได้รับ URL ที่ว่างเปล่าจากการเรียกใช้ API การรายงาน
แม้ว่า สถานะ รายงานจะถูกตั้งค่าเป็นสําเร็จแล้ว แต่องค์ประกอบ ReportDownloadUrl สามารถเป็นค่านิลได้ถ้าไม่มีข้อมูลที่พร้อมใช้งานสําหรับพารามิเตอร์รายงานที่ส่ง หากคุณเห็นข้อมูลประสิทธิภาพการทํางานในแอปพลิเคชันบนเว็บ Microsoft Advertising สําหรับช่วงวันที่และเกณฑ์ตัวกรองเดียวกัน โปรดติดต่อฝ่ายสนับสนุน พร้อมรายละเอียด
ข้อผิดพลาด OAuth ทั่วไป
ต่อไปนี้เป็นเคล็ดลับบางอย่างในการจัดการข้อผิดพลาดในการอนุญาตทั่วไปที่คุณอาจพบ
ข้อผิดพลาด AADSTS
รหัสข้อผิดพลาดและข้อความ AADSTS อาจเปลี่ยนแปลงได้ สําหรับข้อมูลล่าสุด โปรดดูที่ https://login.microsoftonline.com/error หน้าเพื่อค้นหาคําอธิบายข้อผิดพลาด AADSTS การแก้ไข และการแก้ไขปัญหาชั่วคราวที่แนะนําบางรายการ
ค้นหาในส่วนตัวเลขของรหัสข้อผิดพลาดที่ส่งกลับ ตัวอย่างเช่น หากคุณได้รับรหัสข้อผิดพลาด "AADSTS650052" ให้ค้นหา " https://login.microsoftonline.com/error 650052" คุณยังสามารถเชื่อมโยงโดยตรงไปยังข้อผิดพลาดเฉพาะโดยการเพิ่มหมายเลขรหัสข้อผิดพลาดไปยัง URL: https://login.microsoftonline.com/error?code=650052
ข้อผิดพลาด AADSTS ที่พบบ่อยเช่น AADSTS50011, AADSTS650052 และ AADSTS700016 จะอธิบายไว้ในรายละเอียดเพิ่มเติมด้านล่าง
AADSTS50011
ข้อผิดพลาด AADSTS50011 อาจถูกส่งกลับภายในสตริง JSON เมื่อร้องขอโทเค็นการเข้าถึงที่มีจุดสิ้นสุดแพลตฟอร์มข้อมูลประจำตัวของ Microsoft ดังนี้
{"error":"invalid_client","error_description":"AADSTS50011: The reply url specified in the request
does not match the reply urls configured for the application: 'foo'.\r\nTrace ID:
x\r\nCorrelation ID: x\r\nTimestamp: 2019-05-10
17:18:23Z","error_codes":[50011],"timestamp":"2019-05-10
17:18:23Z","trace_id":"x","correlation_id":"x"}
ข้อผิดพลาด URI เปลี่ยนเส้นทางที่ไม่ถูกต้องยังสามารถถูกส่งกลับเป็นข้อความในหน้าต่างเบราว์เซอร์เมื่อคุณร้องขอความยินยอมของผู้ใช้ดังต่อไปนี้
invalid_request: ค่าที่ระบุสําหรับพารามิเตอร์ป้อนเข้า 'redirect_uri' ไม่ถูกต้อง ค่าที่คาดไว้คือ URI ที่ตรงกับ URI เปลี่ยนเส้นทางที่ลงทะเบียนไว้สําหรับแอปพลิเคชันไคลเอ็นต์นี้
ถ้าคุณสังเกตข้อผิดพลาดนี้ URI การเปลี่ยนเส้นทางของคุณไม่ได้รับ การลงทะเบียนอย่างถูกต้อง หรือแอปพลิเคชันของคุณไม่ได้ใช้ URI การเปลี่ยนเส้นทางที่ลงทะเบียนไว้
AADSTS650052
รหัสข้อผิดพลาดของ 650052 สามารถส่งกลับพร้อมกับข้อความ "แอปต้องเข้าถึงบริการ ("https://ads.microsoft.com") ที่องค์กรของคุณ "{organization}" ยังไม่ได้สมัครใช้งานหรือเปิดใช้งาน"
ถ้าคุณสังเกตข้อผิดพลาดนี้ โปรดตรวจสอบให้แน่ใจว่าคุณมีผู้ใช้ที่เป็นผู้ดูแลระบบอย่างน้อยหนึ่งคนจากผู้เช่า Azure AAD ของคุณที่เพิ่มและเปิดใช้งานสําหรับบัญชีงานในแอปพลิเคชันบนเว็บ Microsoft Advertising โปรดติดต่อฝ่ายสนับสนุนสําหรับความช่วยเหลือเพิ่มเติม
AADSTS700016
ไม่พบรหัสข้อผิดพลาด 700016 ที่มีข้อความ "ไม่พบแอปพลิเคชันที่มีตัวระบุ '{appIdentifier}' ในไดเรกทอรี '{tenantName}'
ถ้าคุณมี ID แอปพลิเคชันเก่า (หรือ ID ไคลเอ็นต์) ที่จัดรูปแบบเป็นค่าเลขฐานสิบหก เช่น 0000000012345A67 คุณต้อง ลงทะเบียน แอปพลิเคชันใหม่ ID แอปพลิเคชันที่ถูกต้องสําหรับใช้กับแพลตฟอร์มข้อมูลประจำตัวของ Microsoft จะถูกจัดรูปแบบเป็น GUID ที่มีเส้นประ เช่น 00001111-aaaa-2222-bbbb-3333cccc4444 ถ้าคุณไม่เห็นแอปที่มีอยู่ใน พอร์ทัล Azure - การลงทะเบียนแอป นั่นเป็นอีกหนึ่งข้อบ่งชี้ที่คุณควรแทนที่ด้วยแอปใหม่
URI การเปลี่ยนเส้นทางไม่ถูกต้อง
ข้อผิดพลาดการเปลี่ยนเส้นทาง URI ที่ไม่ถูกต้องอาจถูกส่งกลับภายในสตริง JSON เมื่อร้องขอโทเค็นการเข้าถึงที่มีจุดสิ้นสุด Live Connect ดังนี้
{"error":"invalid_grant","error_description":"The provided value for the 'redirect_uri' is not
valid. The value must exactly match the redirect URI used to obtain the authorization code."}
ข้อผิดพลาด URI เปลี่ยนเส้นทางที่ไม่ถูกต้องยังสามารถถูกส่งกลับเป็นข้อความในหน้าต่างเบราว์เซอร์เมื่อคุณร้องขอความยินยอมของผู้ใช้ดังต่อไปนี้
invalid_request: ค่าที่ระบุสําหรับพารามิเตอร์ป้อนเข้า 'redirect_uri' ไม่ถูกต้อง ค่าที่คาดไว้คือ URI ที่ตรงกับ URI เปลี่ยนเส้นทางที่ลงทะเบียนไว้สําหรับแอปพลิเคชันไคลเอ็นต์นี้
ถ้าคุณสังเกตข้อผิดพลาดนี้ URI การเปลี่ยนเส้นทางของคุณไม่ได้รับ การลงทะเบียนอย่างถูกต้อง หรือแอปพลิเคชันของคุณไม่ได้ใช้ URI การเปลี่ยนเส้นทางที่ลงทะเบียนไว้
เงินช่วยเหลือไม่ถูกต้อง
คุณสามารถส่งกลับข้อผิดพลาด invalid_grant ถ้าคุณพยายามรีเฟรชโทเค็นโดยใช้ขอบเขตที่ผู้ใช้ไม่ยินยอม
{
"error":"invalid_grant",
"error_description":"AADSTS70000: The request was denied because one or more scopes requested are unauthorized or expired. The user must first sign in and grant the client application access to the requested scope."
}
นอกจากนี้ยังสามารถส่งกลับข้อผิดพลาด invalid_grant ได้หาก URI การเปลี่ยนเส้นทางไม่ถูกต้อง โทเค็นการรีเฟรชหมดอายุ ผู้ใช้เปลี่ยนรหัสผ่านหรือโทเค็นถูกเพิกถอน
{"error":"invalid_grant","error_description":"The user could not be authenticated or the grant is expired. The user must first sign in and if needed grant the client application access to the requested scope."}
เมื่อใดก็ตามโดยไม่มีคําเตือนล่วงหน้า Microsoft อาจพิจารณาว่าควรให้ความยินยอมของผู้ใช้อีกครั้ง อย่างไรก็ตาม บางสถานการณ์อยู่ภายในตัวควบคุมของคุณ ไคลเอ็นต์ที่เรียกใช้แอปบนบริการที่ครอบคลุมภูมิภาคและอุปกรณ์ เช่น Microsoft Azure ควร ลงทะเบียน แอปพลิเคชันเว็บด้วยข้อมูลลับของไคลเอ็นต์ คุณสามารถรับโทเค็นรีเฟรชบนอุปกรณ์เครื่องหนึ่งและรีเฟรชบนอุปกรณ์เครื่องอื่นได้ตราบใดที่คุณมี ID ไคลเอ็นต์และข้อมูลลับไคลเอ็นต์เดียวกัน ถ้าคุณลงทะเบียนแอปพลิเคชันสาธารณะโดยไม่มีข้อมูลลับไคลเอ็นต์ คุณจะไม่สามารถใช้โทเค็นรีเฟรชบนอุปกรณ์ต่าง ๆ ได้ โทเค็นลับเฉพาะถูกผูกไว้กับความลับของไคลเอ็นต์ ถ้าคุณได้ใช้ ID แอปพลิเคชันไคลเอ็นต์สาธารณะโดยไม่มีข้อมูลลับของไคลเอ็นต์เพื่อรับโทเค็นรีเฟรชในสหรัฐอเมริกา จากนั้นลองรีเฟรชโทเค็นในภูมิภาค EU ในภายหลัง คุณจะสังเกตเห็นข้อผิดพลาด invalid_grant
ไม่พบแอปพลิเคชันหรือไคลเอ็นต์ที่ไม่ได้รับอนุญาต
ถ้าคุณสังเกตข้อผิดพลาด เช่น "unauthorized_client: ไม่มีไคลเอ็นต์อยู่" หรือไม่พบ "แอปพลิเคชันที่มีตัวระบุ 'foo' ในไดเรกทอรี 'bar'" ตรวจสอบให้แน่ใจว่าแอปพลิเคชันยังคงอยู่สําหรับสภาพแวดล้อมเป้าหมายที่ถูกต้อง เช่น การผลิตหรือ Sandbox
ข้อผิดพลาดไม่พบแอปพลิเคชันอาจถูกส่งกลับถ้าคุณกําลังเรียกใช้จุดสิ้นสุดแพลตฟอร์มข้อมูลประจำตัวของ Microsoft โดยใช้ ID แอปพลิเคชัน Live SDK ที่มีรูปแบบเลขฐานสิบหกสั้น เช่น 00000000012345A67 ในกรณีดังกล่าว คุณต้อง ลงทะเบียน แอปพลิเคชันใหม่ รหัสแอปพลิเคชันแพลตฟอร์มข้อมูลประจำตัวของ Microsoft ที่ถูกต้องจะถูกจัดรูปแบบเป็น GUID ที่มีเส้นประ เช่น 00001111-aaaa-2222-bbbb-3333cccc4444
ถ้าคุณลงทะเบียนแอปในพอร์ทัล Azure ในส่วนชนิดบัญชีที่สนับสนุน ตรวจสอบให้แน่ใจว่า คุณได้เลือก บัญชี ในไดเรกทอรีองค์กรใด ๆ และบัญชี Microsoft ส่วนบุคคล (โปรดดู ลงทะเบียนแอปพลิเคชัน) ถ้าคุณไม่ได้เลือกตัวเลือกนี้ระหว่างการตั้งค่าเริ่มต้น พอร์ทัล Azure อาจจําเป็นต้องให้คุณลงทะเบียนแอปพลิเคชันใหม่
แอปพลิเคชันไม่ได้ถูกกําหนดค่าเป็นแอปพลิเคชันแบบหลายผู้เช่า
คุณอาจสังเกตข้อผิดพลาดต่อไปนี้ถ้าแอปพลิเคชันที่ลงทะเบียนของคุณถูกจํากัดไว้ที่ผู้เช่าเฉพาะ
Application 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx' is not configured as a multi-tenant application. Usage of the /common endpoint is not supported for such applications created after '10/15/2018'. Use a tenant-specific endpoint or configure the application to be multi-tenant.
ถ้าคุณลงทะเบียนแอปในพอร์ทัล Azure ในส่วนชนิดบัญชีที่สนับสนุน ตรวจสอบให้แน่ใจว่า คุณได้เลือก บัญชี ในไดเรกทอรีองค์กรใด ๆ และบัญชี Microsoft ส่วนบุคคล (โปรดดู ลงทะเบียนแอปพลิเคชัน) ถ้าคุณไม่ได้เลือกตัวเลือกนี้ระหว่างการตั้งค่าเริ่มต้น พอร์ทัล Azure อาจจําเป็นต้องให้คุณลงทะเบียนแอปพลิเคชันใหม่
ติดต่อฝ่ายสนับสนุน
ฟอรั่ม Microsoft Q&A มีให้สําหรับชุมชนนักพัฒนาเพื่อถามและตอบคําถามเกี่ยวกับ Bing Ads API และสคริปต์โฆษณาของ Microsoft Microsoft จะตรวจสอบฟอรั่มและตอบกลับคําถามที่ชุมชนยังไม่ได้ตอบ
สิ่งสำคัญ
หากต้องการตรวจสอบให้แน่ใจว่าเราเห็นคําถามของคุณ ให้แท็กด้วย "api โฆษณา"
หากการตรวจสอบเกี่ยวข้องกับบัญชีที่ละเอียดอ่อนหรือรายละเอียดส่วนบุคคลหรือหากคุณไม่พบข้อมูลที่คุณต้องการในการแก้ไขปัญหาของคุณผ่านทาง Microsoft Q&A โปรดติดต่อฝ่ายสนับสนุนโฆษณาของ Microsoft
เคล็ดลับ
เพื่อเร่งการตรวจสอบ โปรดให้การสนับสนุนพร้อมรายละเอียดต่าง ๆ เช่น สภาพแวดล้อมการพัฒนา ความถี่ของข้อผิดพลาด และขั้นตอนในการทําให้เกิดข้อผิดพลาดขึ้นใหม่
สําหรับความช่วยเหลือในการเรียกใช้บริการ Bing Ads API โปรดทําตามขั้นตอนรายการตรวจสอบนี้และให้ผลลัพธ์กับทีมสนับสนุน
- ใครคือผู้ใช้ที่พยายามเรียกใช้บริการ เช่น ที่อยู่อีเมลในการเข้าสู่ระบบคืออะไร
- ID บัญชีหรือหมายเลขบัญชีที่ผู้ใช้พยายามเข้าถึงคืออะไร
- ขั้นตอนที่จําเป็นในการทําซ้ําข้อผิดพลาดคืออะไร รวมคําขอทั้งหมด การตอบสนอง และประทับเวลา ยกเว้นข้อมูลประจําตัวส่วนตัว เช่น โทเค็นการเข้าถึง
- คุณกําลังกําหนดเป้าหมายไปที่สภาพแวดล้อมการผลิตหรือ Sandbox หรือไม่ ตรวจสอบให้แน่ใจว่าคุณกําลังใช้จุดสิ้นสุดการลงทะเบียนแอปและการรับรองความถูกต้องที่ถูกต้องสําหรับการผลิตเทียบกับ Sandbox ในทํานองเดียวกัน ตรวจสอบให้แน่ใจว่าได้ใช้ ที่อยู่บริการเว็บ ที่ถูกต้องสําหรับสภาพแวดล้อมเดียวกัน
- ระบุว่าคําขอเดียวกันได้ผลสําหรับคุณในอดีตหรือไม่ เช่น ประสิทธิภาพในอดีต
- ระบุว่าขณะนี้คุณสามารถทําให้เกิดปัญหาซ้ําได้ทุกครั้งหรือเป็นระยะ ๆ
- สําหรับปัญหาที่เกี่ยวข้องกับบริการ Bulk หรือ Reporting โปรดรวมการติดตามสําหรับทั้งการดําเนินการแบบสํารวจคําขอและสถานะ
- สําหรับปัญหาการรับรองความถูกต้องที่เกี่ยวข้องกับรหัสข้อผิดพลาด 105 หรือ 106 โปรดใส่ตัวระบุระบบสําหรับข้อมูลประจําตัวของผู้ใช้ Microsoft Advertising ด้วย หากต้องการรับตัวระบุผู้ใช้สําหรับผู้ใช้ปัจจุบัน โปรดดูคู่มือเริ่มต้นใช้งานด่วน
สําหรับความช่วยเหลือในการเข้าถึงและรีเฟรชโทเค็นสําหรับการรับรองความถูกต้องด้วย OAuth โปรดทําตามขั้นตอนในรายการตรวจสอบนี้และให้ผลลัพธ์กับทีมสนับสนุน
- ผู้ใช้พยายามรับรองความถูกต้องคือใคร เช่น ที่อยู่อีเมลในการเข้าสู่ระบบคืออะไร
- ID บัญชีหรือหมายเลขบัญชีที่ผู้ใช้พยายามเข้าถึงคืออะไร
- ขั้นตอนที่จําเป็นในการทําซ้ําข้อผิดพลาดคืออะไร รวมคําขอการตอบสนองและการประทับเวลาแบบเต็ม ยกเว้นข้อมูลประจําตัวส่วนตัว เช่น โทเค็นการเข้าถึงและข้อมูลลับของไคลเอ็นต์
- คุณกําลังกําหนดเป้าหมายไปที่สภาพแวดล้อมการผลิตหรือ Sandbox หรือไม่ ตรวจสอบให้แน่ใจว่าคุณกําลังใช้จุดสิ้นสุดการลงทะเบียนแอปและการรับรองความถูกต้องที่ถูกต้องสําหรับการผลิตเทียบกับ Sandbox ในทํานองเดียวกัน ตรวจสอบให้แน่ใจว่าได้ใช้ ที่อยู่บริการเว็บ ที่ถูกต้องสําหรับสภาพแวดล้อมเดียวกัน
- คุณได้ ลงทะเบียน แอปพลิเคชันดั้งเดิมหรือเว็บแล้วหรือไม่ ไคลเอ็นต์ที่เรียกใช้แอปบนบริการที่ครอบคลุมภูมิภาคและอุปกรณ์ เช่น Microsoft Azure ควรลงทะเบียนแอปพลิเคชันเว็บด้วยข้อมูลลับของไคลเอ็นต์
- ID แอปพลิเคชันที่ลงทะเบียน (client_id) ของคุณคืออะไร ถ้าคุณมีข้อมูลลับของแอปพลิเคชัน (client_secret) อยู่ด้วย โปรดยืนยันว่าคุณกําลังตั้งค่าอยู่เมื่อคุณร้องขอโทเค็นการเข้าถึงจากจุดสิ้นสุดการอนุญาต แต่อย่าแชร์กับใครเลย
- เรียกใช้การตรวจสอบสถานภาพการวินิจฉัย OAuth คุณสามารถรับโทเค็นการเข้าถึงสําเร็จและทําคู่มือ เริ่มต้นใช้งานด่วน สําหรับการผลิตหรือ Sandbox ให้เสร็จสมบูรณ์ได้หรือไม่ ถ้าไม่มี ตําแหน่งที่การรับรองความถูกต้องล้มเหลว และข้อผิดพลาดคืออะไร
ภาพรวมของแบบจําลองข้อบกพร่อง
เมื่อการดําเนินการบริการ API Bing Ads ล้มเหลว จะส่งกลับข้อผิดพลาดของบริการ เช่น บริการการจัดการลูกค้าสามารถส่งกลับ ApiFault ได้ ข้อผิดพลาดมีอย่างน้อยหนึ่งวัตถุข้อผิดพลาด วัตถุข้อผิดพลาดประกอบด้วยรายละเอียดของสาเหตุที่การดําเนินการบริการล้มเหลว และรหัสที่ระบุข้อผิดพลาดโดยไม่ซ้ํากัน สําหรับรายการของรหัสข้อผิดพลาด ให้ดู Bing Ads รหัสข้อผิดพลาดในการดําเนินการ API
ข้อบกพร่องและวัตถุข้อมูลที่พร้อมใช้งานจะแตกต่างกันไปตามบริการ ตารางนี้อธิบายรูปแบบข้อบกพร่องและลิงก์ไปยังออบเจ็กต์ข้อมูลข้อผิดพลาดสําหรับแต่ละบริการ
บริการ | คำอธิบาย |
---|---|
ข้อมูลเชิงลึกของโฆษณา | การดําเนินการข้อมูลเชิงลึกของโฆษณาทั้งหมดอาจแสดง AdApiFaultDetail และ ApiFaultDetail |
ความจุ | การดําเนินการจํานวนมากทั้งหมดอาจแสดง AdApiFaultDetail และ ApiFaultDetail |
การจัดการแคมเปญ | การดําเนินการจัดการแคมเปญทั้งหมดอาจแสดง AdApiFaultDetail การดําเนินการจัดการแคมเปญบางอย่างอาจแสดง ApiFaultDetail หรือ EditorialApiFaultDetail สําหรับข้อมูลเพิ่มเติม ให้ดู ออบเจ็กต์ข้อมูลการจัดการการส่งเสริมการขาย |
การเรียกเก็บเงินของลูกค้า | การดําเนินการเรียกเก็บเงินของลูกค้าทั้งหมดอาจแสดง AdApiFaultDetail และ ApiFault การดําเนินการเรียกเก็บเงินของลูกค้าบางรายอาจโยน ApiBatchFault |
การจัดการลูกค้า | การดําเนินการจัดการลูกค้าทั้งหมดอาจแสดง AdApiFaultDetail และ ApiFault |
รายงาน | การดําเนินการรายงานทั้งหมดอาจแสดง AdApiFaultDetail และ ApiFaultDetail |
หมายเหตุ
ออบเจ็กต์ที่บกพร่องทั้งหมดได้รับมาจากออบเจ็กต์ ApplicationFault วัตถุ ApplicationFault จะกําหนดองค์ประกอบ TrackingId ซึ่งระบุรายการบันทึกที่มีรายละเอียดของการเรียกใช้ API โดยไม่ซ้ํากัน หากคุณต้องการ ติดต่อฝ่ายสนับสนุน โปรดระบุรหัสการติดตามพร้อมวันที่และเวลาเมื่อคุณเรียกใช้การดําเนินการบริการ
ความสําเร็จบางส่วน
ความสําเร็จบางส่วนหมายความว่าเมื่อเพิ่ม อัปเดต หรือลบเอนทิตีในชุดงานอย่างน้อยหนึ่งชุด การดําเนินการอาจประสบความสําเร็จสําหรับบางส่วนและล้มเหลวสําหรับบางส่วนของชุดงาน
ความสําเร็จบางส่วนของบริการแบบกลุ่ม
เมื่อคุณ อัปโหลด ระเบียนใน ไฟล์จํานวนมาก การอัปโหลดอาจประสบความสําเร็จสําหรับระเบียนบางอย่างและล้มเหลวสําหรับระเบียนอื่นในชุด เมื่อคุณเรียกใช้ GetBulkUploadUrl คุณสามารถเลือกว่าจะรับข้อผิดพลาดในไฟล์ผลลัพธ์การอัปโหลดหรือไม่
หมายเหตุ
Microsoft Advertising ไม่รองรับลักษณะการจัดการข้อผิดพลาด "ทั้งหมดหรือไม่มีสิ่งใด" คุณจะต้องจัดการกับที่บนฝั่งลูกค้า
ความสําเร็จบางส่วนของบริการการจัดการแคมเปญ
สําหรับเอนทิตีส่วนใหญ่ ความสําเร็จบางส่วนได้รับการสนับสนุนเมื่อเรียกใช้การดําเนินการบริการการจัดการแคมเปญ สําหรับแต่ละดัชนีรายการที่ไม่มีการเพิ่มเอนทิตี องค์ประกอบที่สอดคล้องกันจะเป็น Null องค์ประกอบ PartialErrors แสดงอาร์เรย์ของออบเจ็กต์ BatchError ที่มีรายละเอียดสําหรับเอนทิตีใดๆ ที่ไม่สามารถเพิ่ม อัปเดต หรือลบได้สําเร็จ รายการมี BatchError สําหรับความพยายามที่ไม่สําเร็จเท่านั้น และไม่รวมองค์ประกอบ Null ที่ดัชนีของเอนทิตีที่เพิ่มสําเร็จแต่ละเอนทิตี ในทํานองเดียวกัน การดําเนินการบางอย่างจะส่งกลับ NestedPartialErrors เป็นรายการของ BatchErrorCollection หรือ BatchError สองมิติ
หมายเหตุ
การดําเนินการ ApplyProductPartitionActions ประกอบด้วย PartialErrors ในการตอบสนอง อย่างไรก็ตาม ความสําเร็จบางส่วนไม่ได้รับการสนับสนุน การดําเนินการที่ร้องขอทั้งหมดสําเร็จและรายการคําตอบ AdGroupCriterionIds ถูกเติมเต็มหรือทั้งหมดล้มเหลวและรายการตอบกลับ ของ PartialErrors จะถูกเติมเต็ม
ข้อยกเว้น .NET
ถ้าคุณใช้ Bing Ads .NET SDK แอปพลิเคชันของคุณควรเตรียมพร้อมสําหรับการจัดการ ข้อยกเว้นระดับบริการ BING ADS API ข้อยกเว้น WCF และข้อยกเว้น Bing Ads .NET SDK ที่อธิบายไว้ด้านล่าง
สําหรับการแก้ไขปัญหาแอปพลิเคชัน .NET โปรดดู การแก้ไขปัญหา .NET SDK
ข้อยกเว้น WCF
ความผิดพลาดของ Generic SOAP ที่ไม่ได้เฉพาะเจาะจงกับ API Bing Ads อาจถูกโยนและแอปพลิเคชันของคุณควรจับได้ ตัวอย่างเช่น แอปพลิเคชัน .NET อาจแสดงข้อยกเว้นของ Windows Communication Foundation (WCF) เช่น Exception, TimeoutException และ CommunicationException สําหรับข้อมูลเกี่ยวกับข้อยกเว้นที่คุณควรคาดหวังจาก WCF ดูข้อยกเว้นที่คาดไว้
คุณไม่ควรเรียกเมธอด ปิด ในบล็อกสุดท้ายเพื่อปล่อยวัตถุที่ให้บริการออกใช้ ข้อคัดค้านคือเมธอด Close สามารถแสดงข้อยกเว้นได้ ถ้า ปิด แสดงข้อยกเว้น คุณต้องเรียกใช้เมธอด ยกเลิกการทํางาน เพื่อให้แน่ใจว่าทรัพยากรทั้งหมดถูกปล่อยออกมา มิฉะนั้น คุณอาจมีทรัพยากรรั่วไหลบนเซิร์ฟเวอร์ แนวทางปฏิบัติที่แนะนําคือการเรียก ปิด ภายในบล็อกลองและเรียก ยกเลิก จากข้อยกเว้นที่ถูกจับ
ด้วยเหตุผลเดียวกัน ไม่แนะนําให้ใช้คําสั่งการใช้ สําหรับข้อมูลเพิ่มเติม ให้ดู การหลีกเลี่ยงปัญหาเกี่ยวกับคําสั่งการใช้
ข้อยกเว้นของ .NET SDK
Bing Ads .NET SDK ยกเว้นข้อยกเว้นระดับบริการบางรายการที่เป็นนามธรรม ในการแก้ไขข้อยกเว้นส่วนใหญ่คุณสามารถลองอีกครั้งและติดต่อฝ่ายสนับสนุนได้หากปัญหายังคงอยู่หลังจากพยายามลองใหม่หลายครั้ง
ข้อยกเว้น | Namespaces | คำอธิบาย |
---|---|---|
CouldNotDownloadResultFileException | Microsoft.BingAds | ข้อยกเว้นนี้เกิดขึ้นโดย SDK HttpService ภายในหลังจากพยายามดาวน์โหลดไฟล์ผลลัพธ์จํานวนมากหรือการรายงานล้มเหลว |
CouldNotUploadFileException | Microsoft.BingAds | ข้อยกเว้นนี้เกิดขึ้นโดย SDK HttpService ภายในหลังจากพยายามอัปโหลดไฟล์จํานวนมากล้มเหลว |
OAuthTokenRequestException | Microsoft.BingAds | ข้อยกเว้นนี้จะเกิดขึ้นถ้าข้อผิดพลาดถูกส่งกลับจากเซิร์ฟเวอร์การให้สิทธิ์บัญชี Microsft เมื่อต้องการแก้ไขข้อยกเว้นนี้ ก่อนอื่นคุณสามารถตรวจสอบการติดตามสแตกเพื่อดูรายละเอียดข้อผิดพลาด ในกรณีที่มีการดําเนินการบางอย่างที่คุณสามารถใช้เพื่อแก้ไขปัญหา ตัวอย่างเช่น คุณอาจระบุ ID ไคลเอ็นต์ที่ไม่ถูกต้อง |
BulkOperationCouldNotBeCompletedException | Microsoft.BingAds.V13.Bulk | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะทําการสํารวจสําหรับไฟล์ผลลัพธ์จํานวนมากที่เสร็จสมบูรณ์ และบริการจํานวนมากส่งกลับสถานะที่ล้มเหลว |
BulkOperationInProgressException | Microsoft.BingAds.V13.Bulk | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะดาวน์โหลดไฟล์ผลลัพธ์จํานวนมากที่ยังไม่พร้อมใช้งาน |
CouldNotGetBulkOperationStatusException | Microsoft.BingAds.V13.Bulk | ข้อยกเว้นนี้จะเกิดขึ้นถ้า BulkServiceManager ไม่สามารถรับสถานะการดําเนินการอัปโหลดหรือดาวน์โหลดหลังจากลองใหม่หลายครั้ง |
CouldNotSubmitBulkDownloadException | Microsoft.BingAds.V13.Bulk | ข้อยกเว้นนี้เกิดขึ้นโดย BulkServiceManager เมื่อการดําเนินการบริการ DownloadCampaignsByAccountIds ที่เรียกนั้นไม่ได้ส่งกลับการตอบสนองที่ถูกต้อง |
CouldNotSubmitBulkUploadException | Microsoft.BingAds.V13.Bulk | ข้อยกเว้นนี้เกิดขึ้นโดย BulkServiceManager เมื่อการดําเนินการบริการ GetBulkUploadUrl ที่เรียกไม่ส่งกลับการตอบสนองที่ถูกต้อง |
EntityReadException | Microsoft.BingAds.V13.Bulk | ข้อยกเว้นนี้จะเกิดขึ้นเมื่อพยายามอ่านเอนทิตีจากไฟล์จํานวนมากโดยใช้ BulkFileReader เมื่อต้องการแก้ไขข้อยกเว้นนี้ ก่อนอื่นคุณสามารถตรวจสอบการติดตามสแตกเพื่อดูรายละเอียดข้อผิดพลาด ในกรณีที่มีการดําเนินการบางอย่างที่คุณสามารถใช้เพื่อแก้ไขปัญหา ตัวอย่างเช่น ไฟล์จํานวนมากที่คุณพยายามอ่านอาจมีค่าที่ไม่ถูกต้องในเขตข้อมูลใดเขตข้อมูลหนึ่ง |
EntityWriteException | Microsoft.BingAds.V13.Bulk | ข้อยกเว้นนี้จะเกิดขึ้นเมื่อพยายามเขียนเอนทิตีไปยังไฟล์จํานวนมากโดยใช้ BulkFileWriter เมื่อต้องการแก้ไขข้อยกเว้นนี้ ก่อนอื่นคุณสามารถตรวจสอบการติดตามสแตกเพื่อดูรายละเอียดข้อผิดพลาด ในกรณีที่มีการดําเนินการบางอย่างที่คุณสามารถใช้เพื่อแก้ไขปัญหา ตัวอย่างเช่น คุณอาจระบุค่าที่ไม่ถูกต้องสําหรับหนึ่งในเอนทิตีการอัปโหลด |
CouldNotGetReportingDownloadStatusException | Microsoft.BingAds.V13.Reporting | ข้อยกเว้นนี้จะเกิดขึ้นถ้า ReportingServiceManager ไม่สามารถรับสถานะการดําเนินการดาวน์โหลดหลังจากลองใหม่หลายครั้ง |
CouldNotSubmitReportingDownloadException | Microsoft.BingAds.V13.Reporting | ข้อยกเว้นนี้เกิดขึ้นโดย ReportingServiceManager เมื่อการดําเนินการบริการ SubmitGenerateReport ที่เรียกไม่ส่งกลับการตอบสนองที่ถูกต้อง |
ReportingOperationCouldNotBeCompletedException | Microsoft.BingAds.V13.Reporting | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะสํารวจสําหรับไฟล์ผลลัพธ์การรายงานที่เสร็จสมบูรณ์และบริการการรายงานส่งกลับสถานะที่ล้มเหลว |
ReportingOperationInProgressException | Microsoft.BingAds.V13.Reporting | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะดาวน์โหลดไฟล์ผลลัพธ์การรายงานที่ยังไม่พร้อมใช้งาน |
การแก้ไขปัญหา .NET SDK
เว้นแต่ว่า มีปัญหาการบริการที่ทราบแล้ว โดยทั่วไปเมื่อการเรียกล้มเหลวอาจเป็นเพราะองค์ประกอบ SOAP ไม่ถูกต้อง ไม่เป็นลําดับ หรือคุณระบุข้อมูลประจําตัวที่ไม่ถูกต้อง เมื่อต้องการตรวจสอบทั้งสองกรณี คุณควรจับซองจดหมาย SOAP คําขอ คุณสามารถ ติดต่อฝ่ายสนับสนุน หรือเปรียบเทียบการจับภาพของคุณกับตัวอย่าง SOAP ที่สอดคล้องกันซึ่งจัดทําเป็นเอกสารประกอบสําหรับแต่ละการดําเนินการบริการ
การติดตาม SDK
คุณสามารถใช้ Bing Ads .NET SDK TraceBehavior เพื่อบันทึกคําขอ SOAP และการตอบสนอง
หมายเหตุ
TraceBehavior พร้อมใช้งานกับ Bing Ads .NET SDK เวอร์ชัน 12.13.5 และใหม่กว่า
using (StreamWriter streamWriter = new StreamWriter(@"tracelog.txt"))
{
streamWriter.AutoFlush = true;
// For console output instead of file output, use new TextWriterTraceListener(Console.Out).
// If you only need debug output, you can remove the StreamWriter, TraceListener, and AddTraceSource.
TraceListener traceListener = new TextWriterTraceListener(streamWriter.BaseStream);
IServiceCollection serviceCollection = new ServiceCollection();
serviceCollection.AddLogging(builder => builder
.AddTraceSource(new SourceSwitch("ProgramSourceSwitch", "verbose"), traceListener)
.AddDebug()
.AddFilter(level => level >= LogLevel.Debug)
);
var iLoggerFactory = serviceCollection.BuildServiceProvider().GetService<ILoggerFactory>();
TraceBehavior.Instance.AddMessageInspector(
new LogMessageInspector(
iLoggerFactory.CreateLogger<Program>(),
LogLevel.Information)
);
Authentication authentication = AuthenticateWithOAuth();
// This utiltiy operation sets the global authorization data instance
// to the first account that the current authenticated user can access.
SetAuthorizationDataAsync(authentication).Wait();
// Run all of the examples that are included above.
foreach (var example in _examples)
{
example.RunAsync(_authorizationData).Wait();
}
streamWriter.Flush();
traceListener.Flush();
}
โปรแกรมเต็มรูปแบบที่ใช้ส่วนย่อยข้างต้นสามารถพบได้ใน Program.cs
ตัวเลือก Fiddler
คุณสามารถทําตามขั้นตอนเหล่านี้เพื่อจับซองจดหมาย SOAP จากแอปพลิเคชัน .NET โดยใช้เครื่องมือของบริษัทอื่น เช่น Fiddler
- หลังจากติดตั้ง Fiddler แล้ว ให้ส่งออกใบรับรอง Fiddler จากที่เก็บใบรับรองหลัก
- คลิก เครื่องมือ>ตัวเลือก Fiddler
- เลือกแท็บ HTTPS และคลิกกล่องกาเครื่องหมาย ถอดรหัสลับปริมาณการใช้งาน HTTPS
- คลิก ตกลง แล้วทําตามพร้อมท์เพื่อส่งออกใบรับรอง Fiddler
ข้อยกเว้น Java
หากคุณใช้ Bing Ads Java SDK แอปพลิเคชันของคุณควรเตรียมพร้อมสําหรับการจัดการ ข้อยกเว้นระดับบริการ API ของ Bing Ads และ ข้อยกเว้น Bing Ads Java SDK ตามที่อธิบายไว้ด้านล่าง
สําหรับการแก้ไขปัญหาแอปพลิเคชัน Java โปรดดู การแก้ไขปัญหา Java SDK
ข้อยกเว้น Java SDK
Bing Ads Java SDK ยกเว้นข้อยกเว้นระดับบริการบางรายการที่เป็นนามธรรม ในการแก้ไขข้อยกเว้นส่วนใหญ่คุณสามารถลองอีกครั้งและติดต่อฝ่ายสนับสนุนได้หากปัญหายังคงอยู่หลังจากพยายามลองใหม่หลายครั้ง
ข้อยกเว้น | Namespaces | คำอธิบาย |
---|---|---|
CouldNotDownloadResultFileException | com.microsoft.bingads | ข้อยกเว้นนี้เกิดขึ้นโดย SDK HttpService ภายในหลังจากพยายามดาวน์โหลดไฟล์ผลลัพธ์จํานวนมากหรือการรายงานล้มเหลว |
CouldNotUploadFileException | com.microsoft.bingads | ข้อยกเว้นนี้เกิดขึ้นโดย SDK HttpService ภายในหลังจากพยายามอัปโหลดไฟล์จํานวนมากล้มเหลว |
OAuthTokenRequestException | com.microsoft.bingads | ข้อยกเว้นนี้จะเกิดขึ้นถ้าข้อผิดพลาดถูกส่งกลับจากเซิร์ฟเวอร์การให้สิทธิ์บัญชี Microsft เมื่อต้องการแก้ไขข้อยกเว้นนี้ ก่อนอื่นคุณสามารถตรวจสอบการติดตามสแตกเพื่อดูรายละเอียดข้อผิดพลาด ในกรณีที่มีการดําเนินการบางอย่างที่คุณสามารถใช้เพื่อแก้ไขปัญหา ตัวอย่างเช่น คุณอาจระบุ ID ไคลเอ็นต์ที่ไม่ถูกต้อง |
BulkDownloadCouldNotBeCompletedException | com.microsoft.bingads.V13.bulk | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะสํารวจสําหรับไฟล์ผลลัพธ์การดาวน์โหลดจํานวนมากที่เสร็จสมบูรณ์ และบริการจํานวนมากส่งกลับสถานะที่ล้มเหลว |
BulkOperationInProgressException | com.microsoft.bingads.V13.bulk | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะดาวน์โหลดไฟล์ผลลัพธ์จํานวนมากที่ยังไม่พร้อมใช้งาน |
BulkUploadCouldNotBeCompletedException | com.microsoft.bingads.V13.bulk | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะทําการสํารวจสําหรับไฟล์ผลลัพธ์การอัปโหลดจํานวนมากที่เสร็จสมบูรณ์ และบริการจํานวนมากส่งกลับสถานะที่ล้มเหลว |
CouldNotGetBulkOperationStatusException | com.microsoft.bingads.V13.bulk | ข้อยกเว้นนี้จะเกิดขึ้นถ้า BulkServiceManager ไม่สามารถรับสถานะการดําเนินการอัปโหลดหรือดาวน์โหลดหลังจากลองใหม่หลายครั้ง |
CouldNotSubmitBulkDownloadException | com.microsoft.bingads.V13.bulk | ข้อยกเว้นนี้เกิดขึ้นโดย BulkServiceManager เมื่อการดําเนินการบริการ DownloadCampaignsByAccountIds ที่เรียกนั้นไม่ได้ส่งกลับการตอบสนองที่ถูกต้อง |
CouldNotSubmitBulkUploadException | com.microsoft.bingads.V13.bulk | ข้อยกเว้นนี้เกิดขึ้นโดย BulkServiceManager เมื่อการดําเนินการบริการ GetBulkUploadUrl ที่เรียกไม่ส่งกลับการตอบสนองที่ถูกต้อง |
EntityReadException | com.microsoft.bingads.V13.bulk | ข้อยกเว้นนี้จะเกิดขึ้นเมื่อพยายามอ่านเอนทิตีจากไฟล์จํานวนมากโดยใช้ BulkFileReader เมื่อต้องการแก้ไขข้อยกเว้นนี้ ก่อนอื่นคุณสามารถตรวจสอบการติดตามสแตกเพื่อดูรายละเอียดข้อผิดพลาด ในกรณีที่มีการดําเนินการบางอย่างที่คุณสามารถใช้เพื่อแก้ไขปัญหา ตัวอย่างเช่น ไฟล์จํานวนมากที่คุณพยายามอ่านอาจมีค่าที่ไม่ถูกต้องในเขตข้อมูลใดเขตข้อมูลหนึ่ง |
EntityWriteException | com.microsoft.bingads.V13.bulk | ข้อยกเว้นนี้จะเกิดขึ้นเมื่อพยายามเขียนเอนทิตีไปยังไฟล์จํานวนมากโดยใช้ BulkFileWriter เมื่อต้องการแก้ไขข้อยกเว้นนี้ ก่อนอื่นคุณสามารถตรวจสอบการติดตามสแตกเพื่อดูรายละเอียดข้อผิดพลาด ในกรณีที่มีการดําเนินการบางอย่างที่คุณสามารถใช้เพื่อแก้ไขปัญหา ตัวอย่างเช่น คุณอาจระบุค่าที่ไม่ถูกต้องสําหรับหนึ่งในเอนทิตีการอัปโหลด |
CouldNotGetReportingDownloadStatusException | com.microsoft.bingads.V13.reporting | ข้อยกเว้นนี้จะเกิดขึ้นถ้า ReportingServiceManager ไม่สามารถรับสถานะการดําเนินการดาวน์โหลดหลังจากลองใหม่หลายครั้ง |
CouldNotSubmitReportingDownloadException | com.microsoft.bingads.V13.reporting | ข้อยกเว้นนี้เกิดขึ้นโดย ReportingServiceManager เมื่อการดําเนินการบริการ SubmitGenerateReport ที่เรียกไม่ส่งกลับการตอบสนองที่ถูกต้อง |
ReportingOperationCouldNotBeCompletedException | com.microsoft.bingads.V13.reporting | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะสํารวจสําหรับไฟล์ผลลัพธ์การรายงานที่เสร็จสมบูรณ์และบริการการรายงานส่งกลับสถานะที่ล้มเหลว |
ReportingOperationInProgressException | com.microsoft.bingads.V13.reporting | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะดาวน์โหลดไฟล์ผลลัพธ์การรายงานที่ยังไม่พร้อมใช้งาน |
การแก้ไขปัญหา Java SDK
เว้นแต่ว่า มีปัญหาการบริการที่ทราบแล้ว โดยทั่วไปเมื่อการเรียกล้มเหลวอาจเป็นเพราะองค์ประกอบ SOAP ไม่ถูกต้อง ไม่เป็นลําดับ หรือคุณระบุข้อมูลประจําตัวที่ไม่ถูกต้อง หากต้องการตรวจสอบในทุกกรณี คุณควรจับซองจดหมาย REQUEST SOAP คุณสามารถ ติดต่อฝ่ายสนับสนุน หรือเปรียบเทียบการจับภาพของคุณกับตัวอย่าง SOAP ที่สอดคล้องกันซึ่งจัดทําเป็นเอกสารประกอบสําหรับแต่ละการดําเนินการบริการ
เมื่อต้องการเปิดใช้งานการบันทึกแบบโปรแกรมของข้อความคําขอและการตอบสนอง ให้ดู การเรียกบริการการบันทึก
ตัวเลือก Fiddler
คุณสามารถทําตามขั้นตอนเหล่านี้เพื่อจับซองจดหมาย SOAP จากแอปพลิเคชัน Java โดยใช้เครื่องมือของบริษัทอื่น เช่น Fiddler
หลังจากติดตั้ง Fiddler แล้ว ให้ส่งออกใบรับรอง Fiddler จากที่เก็บใบรับรองหลัก คลิก เครื่องมือ>ตัวเลือก Fiddler เลือกแท็บ HTTPS และคลิกกล่องกาเครื่องหมาย ถอดรหัสลับปริมาณการใช้งาน HTTPS คลิก ตกลง แล้วทําตามพร้อมท์เพื่อส่งออกใบรับรอง Fiddler
ใช้คําสั่งต่อไปนี้เพื่อนําเข้าใบรับรองลงในที่เก็บ cacert ที่ใช้โดย Java ตัวอย่างเช่น ดําเนินการจาก PowerShell ในฐานะผู้ดูแลระบบ
PS C:\Program Files\Java\jre1.8.0_201\bin> .\keytool.exe -importcert -v -alias "Fiddler cert" -trustcacerts -keystore "C:\Program Files\Java\jre1.8.0_201\lib\security\cacerts" -storepass changeit -file <PathToFiddlerRootGoesHere>\FiddlerRoot.cer
เพิ่มบรรทัดต่อไปนี้ลงในแอปพลิเคชัน Java ของคุณ
System.setProperty("https.proxyHost", "127.0.0.1"); System.setProperty("https.proxyPort", "8888");
ข้อยกเว้น PHP
หากคุณใช้ Bing Ads PHP SDK แอปพลิเคชันของคุณควรเตรียมพร้อมสําหรับการจัดการ ข้อยกเว้นระดับบริการ API Bing Ads และข้อยกเว้น PHP SDK Bing Ads ที่อธิบายไว้ด้านล่าง
สําหรับการแก้ไขปัญหาแอปพลิเคชัน PHP โปรดดู การแก้ไขปัญหา PHP SDK
การแก้ไขปัญหา PHP SDK
เว้นแต่ว่า มีปัญหาการบริการที่ทราบแล้ว โดยทั่วไปเมื่อการเรียกล้มเหลวอาจเป็นเพราะองค์ประกอบ SOAP ไม่ถูกต้อง ไม่เป็นลําดับ หรือคุณระบุข้อมูลประจําตัวที่ไม่ถูกต้อง เมื่อต้องการตรวจสอบทั้งสองกรณี คุณควรจับซองจดหมาย SOAP คําขอ คุณสามารถ ติดต่อฝ่ายสนับสนุน หรือเปรียบเทียบการจับภาพของคุณกับตัวอย่าง SOAP ที่สอดคล้องกันซึ่งจัดทําเป็นเอกสารประกอบสําหรับแต่ละการดําเนินการบริการ
พิมพ์ SOAP
ใน PHP คุณสามารถใช้วิธีการต่อไปนี้เพื่อพิมพ์ซองจดหมาย SOAP ตัวอย่างรหัส PHP แต่ละตัวอย่างประกอบด้วยคําสั่งเหล่านี้เพื่อพิมพ์ข้อผิดพลาดไปยังคอนโซล
print $proxy->GetService()->__getLastRequest()."\n";
print $proxy->GetService()->__getLastResponse()."\n";
ข้อยกเว้น PHP SDK
BING ADS PHP SDK ยกเว้นข้อยกเว้นระดับบริการบางรายการที่เป็นนามธรรม ในการแก้ไขข้อยกเว้นส่วนใหญ่คุณสามารถลองอีกครั้งและติดต่อฝ่ายสนับสนุนได้หากปัญหายังคงอยู่หลังจากพยายามลองใหม่หลายครั้ง
นอกจากนี้คุณควรจัดการ OAuthTokenRequestException ซึ่งจะแสดงขึ้นมาหากส่งกลับข้อผิดพลาดจากเซิร์ฟเวอร์การให้สิทธิ์บัญชี Microsft เมื่อต้องการแก้ไขข้อยกเว้นนี้ ก่อนอื่นคุณสามารถตรวจสอบการติดตามสแตกเพื่อดูรายละเอียดข้อผิดพลาด ในกรณีที่มีการดําเนินการบางอย่างที่คุณสามารถใช้เพื่อแก้ไขปัญหา ตัวอย่างเช่น คุณอาจระบุ ID ไคลเอ็นต์ที่ไม่ถูกต้อง
ข้อยกเว้นของ Python
หากคุณใช้ Bing Ads Python SDK แอปพลิเคชันของคุณควรเตรียมพร้อมสําหรับการจัดการ ข้อยกเว้นระดับบริการ API Bing Ads และข้อยกเว้น Bing Ads Python SDK ตามที่อธิบายไว้ด้านล่าง
สําหรับการแก้ไขปัญหาแอปพลิเคชัน Python ให้ดู การแก้ไขปัญหา Python SDK
ข้อยกเว้น Python SDK
Bing Ads Python SDK ยกเว้นข้อยกเว้นระดับบริการบางรายการที่เป็นนามธรรม ในการแก้ไขข้อยกเว้นส่วนใหญ่คุณสามารถลองอีกครั้งและติดต่อฝ่ายสนับสนุนได้หากปัญหายังคงอยู่หลังจากพยายามลองใหม่หลายครั้ง
ข้อยกเว้น | Namespaces | คำอธิบาย |
---|---|---|
BulkException | BingAds.V13.Bulk | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะทําการสํารวจสําหรับไฟล์ผลลัพธ์จํานวนมากที่เสร็จสมบูรณ์ และบริการจํานวนมากส่งกลับสถานะที่ล้มเหลว |
BulkDownloadException | BingAds.V13.Bulk | ข้อยกเว้นนี้จะเกิดขึ้นหากหมดเวลาเกิดขึ้นขณะพยายามดาวน์โหลดไฟล์จํานวนมาก |
BulkUploadException | BingAds.V13.Bulk | ข้อยกเว้นนี้จะเกิดขึ้นถ้าหมดเวลาเกิดขึ้นขณะพยายามดาวน์โหลดไฟล์ผลลัพธ์การอัปโหลดจํานวนมาก |
EntityReadException | BingAds.V13.Bulk | ข้อยกเว้นนี้จะเกิดขึ้นเมื่อพยายามอ่านเอนทิตีจากไฟล์จํานวนมากโดยใช้ BulkFileReader เมื่อต้องการแก้ไขข้อยกเว้นนี้ ก่อนอื่นคุณสามารถตรวจสอบการติดตามสแตกเพื่อดูรายละเอียดข้อผิดพลาด ในกรณีที่มีการดําเนินการบางอย่างที่คุณสามารถใช้เพื่อแก้ไขปัญหา ตัวอย่างเช่น ไฟล์จํานวนมากที่คุณพยายามอ่านอาจมีค่าที่ไม่ถูกต้องในเขตข้อมูลใดเขตข้อมูลหนึ่ง |
EntityWriteException | BingAds.V13.Bulk | ข้อยกเว้นนี้จะเกิดขึ้นเมื่อพยายามเขียนเอนทิตีไปยังไฟล์จํานวนมากโดยใช้ BulkFileWriter เมื่อต้องการแก้ไขข้อยกเว้นนี้ ก่อนอื่นคุณสามารถตรวจสอบการติดตามสแตกเพื่อดูรายละเอียดข้อผิดพลาด ในกรณีที่มีการดําเนินการบางอย่างที่คุณสามารถใช้เพื่อแก้ไขปัญหา ตัวอย่างเช่น คุณอาจระบุค่าที่ไม่ถูกต้องสําหรับหนึ่งในเอนทิตีการอัปโหลด |
FileDownloadException | BingAds | ข้อยกเว้นนี้จะเกิดขึ้นถ้าหมดเวลาเกิดขึ้นขณะพยายามดาวน์โหลดไฟล์ผลลัพธ์การอัปโหลดจํานวนมาก |
FileUploadException | BingAds | ข้อยกเว้นนี้จะเกิดขึ้นถ้าการหมดเวลาเกิดขึ้นขณะพยายามอัปโหลดไฟล์จํานวนมาก |
OAuthTokenRequestException | BingAds | ข้อยกเว้นนี้จะเกิดขึ้นถ้าข้อผิดพลาดถูกส่งกลับจากเซิร์ฟเวอร์การให้สิทธิ์บัญชี Microsft เมื่อต้องการแก้ไขข้อยกเว้นนี้ ก่อนอื่นคุณสามารถตรวจสอบการติดตามสแตกเพื่อดูรายละเอียดข้อผิดพลาด ในกรณีที่มีการดําเนินการบางอย่างที่คุณสามารถใช้เพื่อแก้ไขปัญหา ตัวอย่างเช่น คุณอาจระบุ ID ไคลเอ็นต์ที่ไม่ถูกต้อง |
ReportingException | BingAds.V13.Reporting | ข้อยกเว้นนี้จะเกิดขึ้นถ้ามีความพยายามที่จะสํารวจสําหรับไฟล์ผลลัพธ์การรายงานที่เสร็จสมบูรณ์และบริการการรายงานส่งกลับสถานะที่ล้มเหลว |
ReportingDownloadException | BingAds.V13.Reporting | ข้อยกเว้นนี้จะเกิดขึ้นถ้าเกิดการหมดเวลาขณะพยายามดาวน์โหลดไฟล์ผลลัพธ์การรายงาน |
SdkException | BingAds | คลาสข้อยกเว้นพื้นฐานสําหรับ Bing Ads Python SDK ข้อยกเว้นนี้ไม่เคยเกิดขึ้น |
TimeoutException | BingAds | ข้อยกเว้นนี้จะเกิดขึ้นหากหมดเวลาเกิดขึ้น |
การแก้ไขปัญหา Python SDK
เว้นแต่ว่า มีปัญหาการบริการที่ทราบแล้ว โดยทั่วไปเมื่อการเรียกล้มเหลวอาจเป็นเพราะองค์ประกอบ SOAP ไม่ถูกต้อง ไม่เป็นลําดับ หรือคุณระบุข้อมูลประจําตัวที่ไม่ถูกต้อง เมื่อต้องการตรวจสอบทั้งสองกรณี คุณควรจับซองจดหมาย SOAP คําขอ คุณสามารถ ติดต่อฝ่ายสนับสนุน หรือเปรียบเทียบการจับภาพของคุณกับตัวอย่าง SOAP ที่สอดคล้องกันซึ่งจัดทําเป็นเอกสารประกอบสําหรับแต่ละการดําเนินการบริการ
บันทึก
ถ้าคุณกําลังใช้ Bing Ads Python SDK คุณสามารถรวมการบันทึกไปยังปริมาณการใช้งานเอาท์พุท ตัวอย่างเช่น คําขอ SOAP และการตอบสนอง ตัวอย่างโค้ด Python แต่ละรายการประกอบด้วยคําสั่งเหล่านี้เพื่อพิมพ์การรับส่งข้อมูล SOAP ทั้งหมดไปยังคอนโซล ตรวจสอบให้แน่ใจว่าไม่ได้ใส่ความคิดเห็นถ้าคุณต้องการดูปริมาณการใช้งาน
import logging
logging.basicConfig(level=logging.INFO)
logging.getLogger('suds.client').setLevel(logging.DEBUG)
logging.getLogger('suds.transport.http').setLevel(logging.DEBUG)
ดูเพิ่มเติม
รหัสข้อผิดพลาดในการดําเนินการ Bing Ads API
ที่อยู่บริการเว็บ Bing Ads API